トップページ⇒tech
1001コメント326KB

Java標準低速GUI 6 AWT/Swing

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2007/09/26(水) 20:51:18
ハードウェアの高スペック化、描画アルゴリズムの変更、JavaVMの高速化に伴い、パフォーマンスの問題は改善されています。
しかしながら、"Java"というだけで未だに敬遠されるのが現状。
そんなSwingと引き続き付き合っていくみんなのスレッドです。
Java低速GUI Swing 5 (前スレ)
http://pc11.2ch.net/test/read.cgi/tech/1161139809/
Java低速GUI Swing 4
http://pc8.2ch.net/test/read.cgi/tech/1140533866/
Java低速GUI Swing 3
http://pc8.2ch.net/test/read.cgi/tech/1121700954/
Java低速GUI Swing 2
http://pc8.2ch.net/test/read.cgi/tech/1095398949/
Java低速GUI Swing
http://pc5.2ch.net/test/read.cgi/tech/1062271447/l50
0641デフォルトの名無しさん2007/12/15(土) 19:49:16
>シリコングラフィックのあの癖のある筐体でみるのと、
>DOS/Vの筐体でみるのではやっぱ違ってみえるよねw
それはありますねー。
Sunのマシンにsunの4つつながったロゴがないだけでも、
Motifは別物に見えそうだし。

データセンターでMacのハードやUIがあったりしたら、
違和感ありそうだし。。。
0642デフォルトの名無しさん2007/12/15(土) 23:39:08
>>619
質問 ↓のコードでもmacとwindowsで兼用できなかったの??
KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
0643デフォルトの名無しさん2007/12/16(日) 02:36:30
619です。
>質問 ↓のコードでもmacとwindowsで兼用できなかったの??
>KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
Toolkit#getMenuShortcutKeyMask()メソッドは初めて知りました。
ありがとうございます。

興味本位で聞いただけです。
実際にやってみていない。というかmac環境がないので。試せません。。

http://tinyurl.com/3cbuj2のあたりをざっとみると、
Ctrl+Cとかコピペ、Ctrl+F(検索),Ctrl+S|Oあたりは同じようですが。
Ctrl+Y(やり直し(Windows))の記載が見あたりません。
ちょっと前に、どこかでWindowsのCtrl+YはmacでCtrl+Shift+Zと見たんですが、
記憶違いかガセだったのでしょうか。
でも、macにはUndoの反対のキーバインドがないとは思えませんけど。

でも仮にmacにCtrl+Shift+Zがあるとすると、
Toolkit.getDefaultToolkit().getMenuShortcutKeyMask()だと、
引数と戻り値的に適切な値が取得できるとは考えられないですが。

それとgetMenuShortcutKeyMaskで適切な値が取得できるのであれば、
UIクラスのinstallUI()(すくなくともJTextComponentのサブクラスのUI)では、
InputMapにデフォルトで登録しておいて欲しいところです。

macをさわれる人にgetMenuShortcutKeyMask()の結果を聞きたいです。
いつになるか分かりませんが、私がmacを実行できる機会があれば、
結果を報告します。
0644デフォルトの名無しさん2007/12/16(日) 03:30:19
Mac OS X 10.5.1 です。

% uname -a
Darwin dorado.local 9.1.0 Darwin Kernel Version 9.1.0: Wed Oct 31 17:46:22 PDT 2007; root:xnu-1228.0.2~1/RELEASE_I386 i386 i386 MacBook2,1 Darwin

% java -version
java version "1.5.0_13"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_13-b05-237)
Java HotSpot(TM) Client VM (build 1.5.0_13-119, mixed mode, sharing)

System.out.println(Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
System.out.println(Event.ALT_MASK);
System.out.println(Event.CTRL_MASK);
System.out.println(Event.META_MASK);
System.out.println(Event.SHIFT_MASK);

結果は

4
8
2
4
1

Metaキーってことですかね。
0645デフォルトの名無しさん2007/12/16(日) 03:36:27
Mac OS XではCommand+Cとかになるからね。

getMenuShortcutKeyMaskの戻り値はEvent.META_MASKになる。

CommandキーはWindowsだとWindowsキー。
0646デフォルトの名無しさん2007/12/16(日) 17:50:37
619です。
macの結果を教えてくださりありがとうございます。

macのショートカットキー一覧を見ると
「コマンド + C →「編集」メニュー コピー」と記載されているので、
つまり、getMenuShortcutKeyMask()を使用できそうということでしょうか。

ところで、macにはWindowsでいう「やり直し(Ctrl+Y)」
(元に戻すのを戻す?)は、ないのでしょうか。
私の言っている「Ctrl+Shift+Z」ショートカットキーは誤りですか?
たびたびすみませんが、時間がありましたら教えてください。
0647デフォルトの名無しさん2007/12/16(日) 18:11:03
HIG(Human Interface Guidelines)
http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGIntro/chapter_1_section_1.html

Keyboard Shortcuts
http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGUserInput/chapter_11_section_3.html#//apple_ref/doc/uid/TP30000361-CHDIGFBH

テキストエディット(メモ帳・ワードパッド)
GarageBand(作曲)
Pages(ワープロ)
Keynote(プレゼン)
Numbers(スプレッドシート)
BathyScaphe(2ちゃんねるブラウザ)
で見たら、「やり直す」はCommand+Shift+Zだった。
0648デフォルトの名無しさん2007/12/16(日) 18:17:26
ちょっと古いけど
ttp://developer.apple.com/jp/technotes/tn2042.html

やり直しはShift+Command+Zだね。
0649デフォルトの名無しさん2007/12/16(日) 18:36:01
うお、Leopardでは「取り消す(cmd+Z)」と「やり直す(shift+cmd+z)」に変わったんだね。

プレビューではファイルメニューに、最後に保存した状態に戻す「元に戻す」があったりする。
0650デフォルトの名無しさん2007/12/16(日) 20:20:32
>647さん
>648さん
>649さん
ありがとうございます。
http://developer.apple.com/documentation/UserExperience/Conceptual/OSXHIGuidelines/XHIGUserInput/chapter_11_section_3.html#//apple_ref/doc/uid/TP30000361-CHDIGFBH
のTable 7-5を見ると(Redo(やり直し))Command-Shift-Zってことですね。

頂いた情報を総合すると、getMenuShortcutKeyMask()の戻り値が
Event.META_MASK(Commandキー)である。
やり直しはCommand-Shift-Zということですので、
コピーのキーバインディングに
KeyStroke.getKeyStroke(KeyEvent.VK_C, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
は、良いけど
undo,redoに
KeyStroke.getKeyStroke(KeyEvent.VK_Y, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
KeyStroke.getKeyStroke(KeyEvent.VK_Z, Toolkit.getDefaultToolkit().getMenuShortcutKeyMask());
はNGということですね。

ということで、やはりプラットフォームごとにInputMapを用意する
必要があるということですね。
実装する予定はありませんが、勉強になりました。
面白かったです。



0651デフォルトの名無しさん2007/12/16(日) 21:00:00
Swing標準のキーバインドってなかったっけ?
あったらそれで良いと思う。

あれはLAFで決まるんだっけ?
0652デフォルトの名無しさん2007/12/16(日) 21:36:45
619です。

>Swing標準のキーバインドってなかったっけ?
swing.plaf配下のUI委譲のInputMap登録コードでは、
JListでの上下移動、JComboBox等の選択等の細かいものを除けば、
基本的に選択(JTableのセル選択,JTextComponentのテキスト選択)、
移動系(セルの選択位置移動、キャレットの移動)の
キーバインドしか登録されないのです。

undo,redoをはじめ、Ctrl+S,Ctrl+O等の、機能が実装されていないものに
関しては仕方がないにしても、JTable,JTextComponentでは、
printを実装しているにも関わらず、Ctrl+Pも登録されません。
ですから、標準のキーバインドはないのでは?と思っています。

まぁ、個別のOSのアプリケーションを熟知してませんが、
Gridやテキストエディタでの選択、移動のショートカットキーは、
各OSともほぼ共通なため、そのあたりは登録できるものの、
undo,redo等は、上記のような例があり、標準として登
録できないという事情があるのかもしれません。

でもSwing標準のキーバインドなんてあったとしても、
個人的には、ショートカットキーをバリバリ使う人にはストレスフルで
使いたくないし覚えたくないだろうと思いますが。

ちなみにLAF毎に、キーバインドを登録するようなコードが
それぞれのUIクラスのソースに無いのは先述のとおりです。
0653デフォルトの名無しさん2007/12/16(日) 21:48:11
>>633
0654_2007/12/19(水) 14:53:45
combodata = {"a", "b", "c","d"};
・
       ・
       ・
private void Combo1ActionPerformed(java.awt.event.ActionEvent evt) {


if (Combo1.getSelectedItem().equals("a")||Combo1.getSelectedItem().equals("b")){
Combo2.setEnabled(true);
}
else{
Combo2.setEnabled(false);
}

}

Combo1でaかbが選択された場合はCombo2が有効で
Combo2でcかdが選択された場合はCombo2が無効になるようにしたいのですが

上のやり方だとaを選ぶとCombo2は有効になるんですがaを選んだ後にcに変更すると
Combo2は無効にならずに有効のままになってしまいます.
同じようにcを選ぶと無効になるんですがその後にaを選ぶと無効のままになってしまいます.

これを直す方法を教えていただけないでしょうか?お願いします.
0655デフォルトの名無しさん2007/12/19(水) 15:17:46
いくつか突っ込みどころがあるから最初からやり直した方が早い。
0656デフォルトの名無しさん2007/12/20(木) 03:59:56
最初からやり直すというか、紙の上で状態遷移を考えた方がいい。
自分の言ってる矛盾に気付けるから。
0657デフォルトの名無しさん2007/12/20(木) 08:13:43
>Combo1でaかbが選択された場合はCombo2が有効で
>Combo2でcかdが選択された場合はCombo2が無効になるようにしたいのですが

下のCombo2はCombo1の間違えだよね?
0658デフォルトの名無しさん2007/12/20(木) 08:46:01
Combo1の間違えでした.

Combo1の状態に応じてCombo2の有効,無効が変化する
物をつくりたいんですが教えていただけないでしょうか
0659デフォルトの名無しさん2007/12/20(木) 09:23:02
combo2.setVisible(false);
これでは駄目なの?
0660_2007/12/20(木) 11:53:34
上のやり方だとaを選ぶとCombo2は有効になるんですがaを選んだ後にcに変更すると
Combo2は無効にならずに有効のままになってしまいます.
同じようにcを選ぶと無効になるんですがその後にaを選ぶと無効のままになってしまいます.
最初の選択では上手くいくんですが選択を変更すると変化してくれないんです。
0661デフォルトの名無しさん2007/12/20(木) 12:45:54
まず、そもそもCombo1ActionPerformedメソッドが実行されてるのかどうかを確かめるんだ。
実行されてるなら、そのときCombo1.getSelectedItem()の値が実際は何になっているのかを確かめるんだ。
0662_2007/12/20(木) 13:07:41
Combo1でaを選ぶとCombo1ActionPerformedメソッドが実行されてCombo1.getSelectedItem()の値は
aになっているんですがその後にCombo1でcを選んでもCombo1ActionPerformedメソッドが実行されてません

続けて選んだ場合にもCombo1ActionPerformedメソッドが実行されるようにするにはどうすればよいのでしょうか?
0663デフォルトの名無しさん2007/12/20(木) 13:44:37
>>662
実行されてないのをSystem.out.println文で確認した?
0664_2007/12/20(木) 16:00:32
確認しました
コンボボックスを変更してもActionPerformedにいってくれないようです
0665デフォルトの名無しさん2007/12/20(木) 17:13:44
ActionListenerをやめて、ListDataListenerでComboBoxModelの変更を捕らえてみたらどう
0666デフォルトの名無しさん2007/12/20(木) 19:48:40
おい、おまいら。
SwingApplicationFramework使ってますか?
0667デフォルトの名無しさん2007/12/20(木) 19:57:08
使ってません。
あれって便利なの?
0668デフォルトの名無しさん2007/12/20(木) 20:00:15
使ってみようと、Netbeansでプロジェクトを作った。
でも、どうするものかいまいちピンときていない。
Actionの管理をしてくれるのはいいんだけどちょっと縛りがきついなぁと感じた。
IDE無しでは複雑過ぎる気がする。
0669デフォルトの名無しさん2007/12/20(木) 20:57:09
IDEなしでの比較だとアクションイベントを書くのはフレームワーク使ったほうが楽

アプリケーションの起動時と終了時に処理が書けるようになるとかはまぁあればあったでいいという程度

ただアノテーションつかってそれの名称を文字列で記述ってのは実行時エラーの可能性が増えるから
静的言語としてはどうかなぁというのが多い

Web方面のフレームワークもだけどね
Springとか最新版ですら1.4とか過去の互換性のために文字列を使うことが多すぎ
enumきっちりつかってくれよと思うことは多いかな
0670デフォルトの名無しさん2007/12/21(金) 00:39:19
IDEなしということはGUIエディタも使わずにSwingのアプリを作るってこと?
本で紹介するサンプルコードならともかく、本格的なもの作るなら論外だと思えるけど。
0671デフォルトの名無しさん2007/12/21(金) 00:42:07
別に普通に行われてることですが
0672デフォルトの名無しさん2007/12/21(金) 00:42:42
そりゃお気の毒
0673デフォルトの名無しさん2007/12/21(金) 00:47:11
本格的なものを作るならフォームエディタなんて使わないと思うが。
0674デフォルトの名無しさん2007/12/21(金) 00:58:40
>>670
逆じゃないの?
0675デフォルトの名無しさん2007/12/21(金) 01:00:16
IDEサポートなしと読めばいいじゃない。
0676デフォルトの名無しさん2007/12/21(金) 01:02:26
>>673-674
はいはいwノシ
0677デフォルトの名無しさん2007/12/21(金) 01:04:17
最近Javaから離れて久しいが、GroupLayoutはツールなしで使うのは
辛いと聞いたことがあるな。
0678デフォルトの名無しさん2007/12/21(金) 07:36:04
670にとって本格的なものってのは
テキストフィールド2つにボタンひとつ。
0679デフォルトの名無しさん2007/12/21(金) 08:34:45
IDEなしじゃ何もできないって人は、素のHTMLをいじれない人と「使えない」って点で似てる
0680デフォルトの名無しさん2007/12/21(金) 11:03:39
ここでは何もできない人の話はしてないね。
0681デフォルトの名無しさん2007/12/21(金) 11:05:03
>>678の煽りの程度の低さに絶望した
もっとまともな指摘があるのかと思った。
0682デフォルトの名無しさん2007/12/21(金) 11:10:10
仕事でレイアウトマネージャって使っています?
0683デフォルトの名無しさん2007/12/21(金) 11:12:54
使うよ
0684デフォルトの名無しさん2007/12/21(金) 11:45:21
やっぱ普通使うよね
絶対座標ばっかだ・・・
0685デフォルトの名無しさん2007/12/21(金) 12:29:53
>>679
効率よく出来るかどうかだから。
仕事ならDreamWeaverとか使わないでHTML生成してるアホはいらんね。

ペイントあればフォトショップ等いらないでしょ?とか
テキストエディタでPDF作れるでしょ?といってるのとかわらんな。

>>684
せめてNetBeansに付属の伝統のAbsoluteLayout使ってね。
Nullはだめだぞ。
0686デフォルトの名無しさん2007/12/21(金) 12:52:28
親切な香具師だな。
土を手で耕したいという土民なんかほっとけばいいのに。w
0687デフォルトの名無しさん2007/12/21(金) 12:57:29
なんかバカがいるな。
0688デフォルトの名無しさん2007/12/21(金) 13:33:04
仕事ではGridBagLayoutが基本かな・・・
NetbeansのGridBagLayoutのエディタが無いと仕事にならんね・・・・
もうちょっと進化してくれても恨まないけど・・・・

複数のレイアウトマネージャを組み合わせて、
がちっと作り込むのは実はむしろ趣味のほうだったりする。
それでも、GridBag,Groupを手で書くのは調整くらいはできても、まぁ正直無理。
0689デフォルトの名無しさん2007/12/21(金) 13:37:50
レイアウトマネージャの組み合わせはわりと普通に使う

ただ、GropuLayoutがでてしまったおかげでほとんどそれ1本でいけるようになっちまった
0690デフォルトの名無しさん2007/12/21(金) 13:47:57
GropuLayoutはいいよね。使いたい。
でもそのためにはJavaのバージョンを6にしないとだめなんだよなー
まだ1.4だしなー
先は長いな・・・
0691デフォルトの名無しさん2007/12/21(金) 13:50:37
GropuLayout
0692デフォルトの名無しさん2007/12/21(金) 13:58:22
パッケージが違っていいのなら1.4から使えた希ガス。
5.0からだったかな?

来年登場予定のJavaSE7がでると1.4は保守されなくなるから。
保守契約結んでいるなら5.0以上でも動くようにしていったほうがいいね。
0693デフォルトの名無しさん2007/12/21(金) 16:55:49
1.4はとっくにEOL。jdk7が出てから死ぬのは1.4.2
0694デフォルトの名無しさん2007/12/21(金) 19:39:20
GroupLayoutが出たときにEclipseからNetBeansに乗り換えようかなと考えたけど
GroupLayoutが、考え方が非常に明快な上に
頭で考えたことを素直に反映できる優秀なレイアウトだったので、やめた
0695デフォルトの名無しさん2007/12/21(金) 19:40:22
なんじゃそりゃ
0696デフォルトの名無しさん2007/12/21(金) 19:45:29
難読化
0697デフォルトの名無しさん2007/12/21(金) 19:50:41
IDEなしじゃGUIも扱えない奴ってどうなん?
JTableとかテキストフィールドで再現してそう
0698デフォルトの名無しさん2007/12/21(金) 19:56:51
それはないだろ
0699デフォルトの名無しさん2007/12/21(金) 20:16:43
無知の自覚がない無知は無知のまま放置がベスト
0700デフォルトの名無しさん2007/12/21(金) 21:17:20
>>670
GUIエディタは便利だけど、業務アプリでそういうのでサックリ作っちゃうと
後々火を吹くから俺のPjでは使わない。

>>685
イタイな
0701デフォルトの名無しさん2007/12/21(金) 21:46:14
GroupLayoutってさ、vGroupとかhGroupとか使ってコンポーネントのレイアウトを決めるわけだけど、
なんか冗長な記述だよな。これは仕方ないのか?
0702デフォルトの名無しさん2007/12/21(金) 21:46:20
>>700
GUIに頼らずにどこまでできるかで、決定的な差が出る場面ってあるからね。
このスレではアマチュアが多いのか、あまり良く分かってない人が多いようだけど。
0703デフォルトの名無しさん2007/12/21(金) 22:05:17
>>700
えぢたを使って火を噴くって例えばどんなの?
0704デフォルトの名無しさん2007/12/21(金) 22:21:03
ロジックを画面実装で埋め込ませなければ大丈夫じゃないか?
ウチではハンドラをあとからインジェクションする仕組みで使ってるが・・・
0705デフォルトの名無しさん2007/12/21(金) 22:24:13
>>704
確かにそうだね。
完全にGUI担当者がデザイナと化してくれれば問題はないよね。
あとは、GUI担当者が皆一様の作法を身につけてくれることが重要かな。
そのためにもGUIデザインのためのフレームワークみたいなものは欲しいね。
0706デフォルトの名無しさん2007/12/21(金) 22:27:10
SwingApplicationFramework
0707デフォルトの名無しさん2007/12/21(金) 23:59:58
デザイン関係ない
0708デフォルトの名無しさん2007/12/22(土) 06:26:42
GUIエディタ使って火噴くって、どんだけ低レベルなんだよ
0709デフォルトの名無しさん2007/12/22(土) 07:39:23
>>708
おまえ程低くないと思うよ。
0710デフォルトの名無しさん2007/12/22(土) 08:06:29
煽りあいしかできないのか。ちょっとは期待してたんだが。
0711デフォルトの名無しさん2007/12/22(土) 12:13:06
>>706
それはどっちかというとGUIアプリの処理手順をフレームワーク化してるよね
ちょっとわかりにくいかもだけど、俺がいいたいのは、「GUIデザイン」部分のフレームワーク。
そういうのがあったらいいなぁなんてオモタわけ。
うーん伝わらないか。。。
0712デフォルトの名無しさん2007/12/22(土) 12:45:00
>>700をはじめとして釣りがまざってるので注意
0713デフォルトの名無しさん2007/12/22(土) 15:44:41
IDEがないと何も出来ません><ってやつが大勢を得る事なんてないから黙ってようね
0714デフォルトの名無しさん2007/12/22(土) 16:01:58
原因不明のバグが出たらとりあえず全部調べるんじゃね
0715デフォルトの名無しさん2007/12/22(土) 16:22:38
IDEていうかGUIビルダみたいなRADのこと言ってんだろ湧いて来る厨は。
0716デフォルトの名無しさん2007/12/22(土) 16:26:24
せいぜいメインウィンドウのメニューや、そこから辿れる設定ダイアログまでだな。
3ペインアプリとかは手書きじゃないと満足いくものはできないだろ
0717デフォルトの名無しさん2007/12/22(土) 16:32:42
3ペインなら今手書きで作ってるが・・・。
0718デフォルトの名無しさん2007/12/22(土) 18:37:38
GUIエディタ使うってのは、業務アプリの画面とかダイアログだろ。
0719デフォルトの名無しさん2007/12/22(土) 18:39:31
IDEじゃ何もできません><ってやつは使い物にならんよなぁ。
ツール使えばすぐできることを、なんだかんだいいながら手書きでやるんだけど、無駄に時間かかるし古い機能しか使ってなかったり。
0720デフォルトの名無しさん2007/12/22(土) 18:46:41
>>718
なるほどね。業務アプリって画面びっしりコントロールをつけるからなw
0721デフォルトの名無しさん2007/12/22(土) 19:00:30
>>719
まともなコードが書けるかどうかが重要であって、
IDEの使用経験の有無は大した問題じゃない気がする

IDE使ったことない奴には使い方を教えてやるだけで済むが、
プログラミングのセンスがない奴はいくら教えてもどうにもならん
0722デフォルトの名無しさん2007/12/22(土) 19:10:38
もういいからVB使っとけよ。
0723デフォルトの名無しさん2007/12/22(土) 19:11:51
VBにSwingってあるの?
0724デフォルトの名無しさん2007/12/22(土) 19:15:21
>>721
でもIDEの慣れの差はやはり大きい
NetBeansを長年使ってきた人はさくさくつくれるけど、
Eclipseしか触ってこなかった人は開発効率が悪い

1,2年たつと違うんだろうけどね
0725デフォルトの名無しさん2007/12/22(土) 19:17:27
>>724
結局それがいいたかっただけか。
マジレスしなくてよかった。
0726デフォルトの名無しさん2007/12/22(土) 19:19:44
>>725
俺今日はじめて書きこんだんけど
0727デフォルトの名無しさん2007/12/22(土) 20:00:38
業務アプリだと、こんな感じで入力項目があるからな。
http://www.epson.jp/products/oen/products/kyuyo_lite/img/img_kyuuyo02.gif

ツール使わずにやるのは非効率極まりない。
0728デフォルトの名無しさん2007/12/22(土) 20:45:36
>>727
俺が仕事で作ってる業務アプリは、こんなもんじゃねーぞ・・・
タブで分かれて細かい設定項目が山のようにある。
あんなの手書きしてたら気が狂うわ。
0729デフォルトの名無しさん2007/12/22(土) 20:48:02
普通に100個ぐらいコンポーネントあるよね
0730デフォルトの名無しさん2007/12/22(土) 21:12:10
まだ言い合ってるのか。お前らも飽きないな
0731デフォルトの名無しさん2007/12/22(土) 21:22:46
業務アプリじゃJTableやJTreeはめったに登場しないしな
そういう人らは使えばいいんじゃない?
0732デフォルトの名無しさん2007/12/22(土) 21:24:25
JTableは使用しまくりだよ
0733デフォルトの名無しさん2007/12/22(土) 21:32:13
>>731
JTable使いまくりだけど・・・
検索結果を大量に表示したりせんの?
まあ、めったにJTreeは使わんけど。
0734デフォルトの名無しさん2007/12/22(土) 22:44:43
テーブルがでてこないアプリってあるか?
ツリーはあんまりないけど
0735デフォルトの名無しさん2007/12/22(土) 22:53:20
個人開発だけどツリーの方がよく使う。JTableはスプレッドシートだから業務アプリでよく使うんじゃない?
0736デフォルトの名無しさん2007/12/23(日) 01:19:09
アプリ毎で性格違うんだから、自分の携わったプロジェクトの経験だけあげてもしかたない。
でも、部品の利用のされ方ってのは興味深いな。

アプリで使われてる場面がどれくらいあるのか、
JTableなんかのレンダラとかもどうされてるか気になる。
デフォルトで行ける場面ってどれくらいあるのかとか。

Swingのデフォルト部品って、あと一味足りないみたいなとこあるからなぁ。
というか、特にJTableに感じるんだけど。
(表の真ん中にスクロールバー付けたいなぁ、とか)
0737 2007/12/23(日) 03:03:49
Swingでキャッチされない例外が起きてもプログラムは終了しませんよね。
エクリプスとかで走らせてるとoutputに表示されるけど、コマンドプロンプトから走らせるとキャッチされない例外が起きてるのが分かりません。
これを知るにはどうしたらいいのですか?
検出してログをとるなり、メッセージダイアログを表示するなりしたいんです。
0738デフォルトの名無しさん2007/12/23(日) 05:31:30
sun.awt.exception.handler で検索汁
0739デフォルトの名無しさん2007/12/23(日) 11:06:01
throwsして無けりゃなんか表示するとおもう
0740デフォルトの名無しさん2007/12/23(日) 11:13:30
>>736
> 表の真ん中にスクロールバー付けたいなぁ
それは一味も二味も違うだろ w
それができるテーブルコントロールなんて他の言語でも見たこと無いけど。
まあ、俺なら二つのテーブルを並べて、スクロールを同期させるかな。
■ このスレッドは過去ログ倉庫に格納されています