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

Java低速GUI Swing 8

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん2008/11/21(金) 11:24:21
ハードウェアの高スペック化、描画アルゴリズムの変更、JavaVMの高速化に伴い、パフォーマンスの問題は改善されています。
しかしながら、"Java"というだけで未だに敬遠されるのが現状。
そんなSwingと引き続き付き合っていくみんなのスレッドです。

Java低速GUI Swing 7
http://pc11.2ch.net/test/read.cgi/tech/1204155623/
Java低速GUI Swing 6
http://pc11.2ch.net/test/read.cgi/tech/1190807478/
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
0002デフォルトの名無しさん2008/11/21(金) 11:25:06
VisualStudioのようなポトペタ開発環境がほしい!!
NetBeans
http://www.netbeans.org/index_ja.html
Eclipse+VisualEditorPlugin
http://www.eclipse.org/
http://www.eclipse.org/vep/
Jigloo
http://cloudgarden.com/jigloo/index.html
0003デフォルトの名無しさん2008/11/21(金) 11:25:58
AWTもターゲットに入ってていいんだよね?

Q. AWT と Swing 混ぜちゃ駄目って聞いたんですけど
  混ぜちゃ駄目なんですか・・・・?
A.
 今まででは、「駄目」というのが正解です。
 が、現在開発中(未リリース)のバージョンではSwingとAWTの混在ができるようになっています。
 正式リリースがされるまで、情報の錯綜があって混乱すると思いますが
 普通の人にとっては「まだ駄目」という状況だと思ってください。

Q. Nimbusって何よ。
A.
 次期Swingの標準となるとされているLAFです。
 元々は、SUNのGnome環境のテーマに使われていた見た目を移植したものになります。
 実装にはXMLベースでLAFを定義できるSynthLookAndFeel を利用しています。
 jdk6の開発版で試す事ができます。

Q. こんなプログラムを作れって言われたんですが・・・
A.
 宿題スレへどうぞ。

Q. なんでスレタイに低速って入ってるの?
A.
 まだまだ速くなるってことさ。
0004デフォルトの名無しさん2008/11/21(金) 11:37:19
GUIの質問なので、再度書き込みします。

こんなGUIのフォームを作りたいんですが、
その中でいくつか質問があります。

テーブルA  ボタン  テーブルB
ID Name        ID  Name
[1 ][A ]       [1 ][E ]
[2 ][B ]  (追加)  [2 ][F ]
[3 ][C ]  (削除)  [3 ][G ]
[4 ][D ]       [4 ][H ]

1.テーブルID項目は非表示にさせたいけど方法をおしえていただけませんか?
2.テーブルAセルを選択した状態で追加ボタンをおしてテーブルBに追加したいんですが、
 選択したセルの情報を取得する方法をおしえていただけませんか?

以上です。よろしくお願い致します。
0005デフォルトの名無しさん2008/11/21(金) 12:36:18
1.必要なデータを提供するモデルを実装する。
2.JTable#getValueAt(row,col)
0006デフォルトの名無しさん2008/11/21(金) 12:38:33
あ、選択した行、列はJTable#getSelected〜で。
API読めよw
0007デフォルトの名無しさん2008/11/21(金) 12:55:57
>>6
ありがとう御座います。
兆しがみえたのでちょっとやってきます。
>API読めよw
これってSunのクラス説明のこと?
0008デフォルトの名無しさん2008/11/21(金) 21:52:00
>>4のレベルだとリファレンスマニュアルよりもまずswingの参考書を
一冊読んだほうがよさそうな気がするなw
0009デフォルトの名無しさん2008/11/21(金) 23:34:02
くだらん嘲笑するぐらいなら
ちょっとのヒントぐらい書いてやればいいものを
0010デフォルトの名無しさん2008/11/22(土) 19:41:01
ヒントってか>>5で答がでてるじゃん…
あと参考書読んだ方がいいってのもヒントだと思うけど…
0011デフォルトの名無しさん2008/11/22(土) 20:59:12
>>10
>9はもっと丁寧に、そして空気を悪くするなって言いたいんでしょう。たぶん。

>>4
選択したセル番号を直接得ることはできないけど、選択した行と列を得るメソッドとして
それぞれgetSelectedRowとgetSelectedColumnというのがあります。
0012デフォルトの名無しさん2008/11/22(土) 21:07:50
答え既にでてるのにお疲れ様です。
0013デフォルトの名無しさん2008/11/24(月) 13:10:06
APIリファレンスを読んでから質問しましょう。

Java 6
http://java.sun.com/javase/ja/6/docs/ja/api/
Java 5.0
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/
Java 1.4.2
http://sdc.sun.co.jp/java/docs/j2se/1.4/ja/docs/ja/api/
0014デフォルトの名無しさん2008/11/24(月) 13:25:22
>>13
APIリファレンスってSwingの使い方がわかる人にしか意味ないし、
そういう人はたいてい質問してこないんじゃ・・・
0015デフォルトの名無しさん2008/11/24(月) 15:16:17
あのー、JFrameを勧める人が多いんですけど(swingなので当然ですが)、JFrameはスレッドがらみでダメダメって話があるんでやっぱりダメなんですか?
0016デフォルトの名無しさん2008/11/24(月) 16:13:29
>>15
お前が何をしたいのかが分からない
よって答えも出せなければ相談にも乗れない
0017デフォルトの名無しさん2008/11/24(月) 16:16:06
ダメなんですか
やめておきます

っていうレスの後押しが欲しいんだろ
0018デフォルトの名無しさん2008/11/24(月) 16:34:38
なんか殺気だってますねこのスレ。結局・・・人生ってのは孤独なものなのでしょうがないんでしょうか・・・
0019デフォルトの名無しさん2008/11/24(月) 16:52:40
>>18
同意して欲しいのかい?構ってちゃん
0020デフォルトの名無しさん2008/11/24(月) 16:58:56
慣れてくれば、JInternalPaneとかJAppletでやって、それを最後にFrameとかに貼り付けるかな。
0021デフォルトの名無しさん2008/11/24(月) 17:02:46
>JInternalPaneとかJAppletでやって
何をやるの?
0022デフォルトの名無しさん2008/11/24(月) 20:35:57
流石に>>15は釣りだろ…
0023デフォルトの名無しさん2008/11/24(月) 21:01:58
>>15は真性で
>>18が釣と見た
0024デフォルトの名無しさん2008/11/25(火) 09:54:16
V2C使ってみてSwingすげーと思った
0025デフォルトの名無しさん2008/11/25(火) 11:40:35
おまいら jEdit つかわんのか?
0026デフォルトの名無しさん2008/11/25(火) 16:39:48
>>23
いや、20だろ、釣りは。
0027デフォルトの名無しさん2008/11/25(火) 22:33:13
あほっても誰も構ってくれないなんか淋しいよな・・・
0028デフォルトの名無しさん2008/11/25(火) 22:57:44
JTextAreaの幅のみを固定して使いたいのですが、setPreferredSizeを使うと、
高さも固定されてしまいます。何か良い方法は無いでしょうか。
0029デフォルトの名無しさん2008/11/25(火) 23:06:15
ありません。
0030デフォルトの名無しさん2008/11/25(火) 23:15:25
おお…、無いですか。ありがとうございました。
0031デフォルトの名無しさん2008/11/25(火) 23:42:14
JComboBoxについて質問させてください。

現在、コンボボックスのプルダウン時の表示項目を
個別にDISABLEDにさせられる様にしようとしてます。

表示はCellRendererでどうにかなったものの、マウスで
DISABLEDにした項目をクリックすると選択が出来てしまいます。
この現象を防ぐためにはどのようにすればいいのでしょうか?

よろしくお願いします。
0032デフォルトの名無しさん2008/11/26(水) 00:30:08
http://java.sun.com/docs/books/tutorial/uiswing/dnd/droplocation.html
この例のようなやり方で自作コンポーネントへ、TransferHandlerによるDnDでドロップ位置の表示を行おうとしています。
この方法でsetDropLocation(←自作コンポーネントに作成したアクセサ)によりDropLocationを設定すべき場所は、TransferHandler内ではどの場所でしょうか?

入力しようとするときに表示させるものなので、現在は
TransferHandler#canImport(TransferSupport)
内でsetDropLocation(support.getDropLocation())
としています。
一応表示はされますが、この方法ではドロップターゲットが変わった場合にsetDropLocation(null)とできないため、ドロップ位置の表示が消えません。
何かドロップ位置を表示するスマートな方法はありませんでしょうか?
0033デフォルトの名無しさん2008/11/26(水) 11:00:19
JListはsetListData()でオブジェをセットできますが、
JTableはなにを使えばオブジェをセットできますか?
0034デフォルトの名無しさん2008/11/26(水) 11:51:40
>>28
JTextArea を入れるコンテナのレイアウトを工夫する。
たとえば BorderLayout では
EAST と WEST のコンポーネントは
横幅が preferred size の横幅に固定され、
高さはコンテナのサイズによって変わる。
0035デフォルトの名無しさん2008/11/26(水) 12:13:47
JWindow上のコンポーネントのツールチップを表示させるにはどのようにすればよいのでしょうか?
0036デフォルトの名無しさん2008/11/26(水) 12:35:26
>>35
普通はどうやってるの?
JWindowでだけ特殊だという意味?
ツールチップの設定の仕方自体を知らないという意味?
0037デフォルトの名無しさん2008/11/26(水) 12:38:26
いえ、普段JFrameにコンポーネントのせていて、元々対応していないものであればToolTipManagerで登録して・・のような流れで表示させていたのですが、JWindow(JFrame以外のwindow?)にのせてみると表示されなくなったのです。
0038デフォルトの名無しさん2008/11/26(水) 12:58:28
>>37
普通の使い方は、JComponent#setToolTipText()でしょ。
で、うろ覚えだけど、JComponent#setToolTipText()でString引数がnullかどうかで、
ToolTipManagerに登録(registerComponent(JComponent),unregisterComponent(JComponent))されるように実装されてたはず。

なので、
>元々対応していないもの
これの意味が分からない。
ToolTipManagerはそもそも、JComponentしか受け付けないはずだし、
JComponentであれば、ツールチップを表示させられる。
であるのに、元々対応していないものとは?

あとは、JFrameを使用しているほうのバージョンでは、
setInitialDelay()等のhogeDelayプロパティを変更しているとか。
ツールチップを無効にしているとか。
JFrameを使用しているほうのバージョンとJWindowのコードとの差を検査した方が良いと思う。
0039デフォルトの名無しさん2008/11/26(水) 13:17:37
>>37
38です。
ちょっとコード書いてみたけど、たしかに動かない。。すまん。
JWindow,ToolTipManagerのソース見たほうが良いかも。
class Hoge{
public static void main(String[] args){
JWindow window = new JWindow();
//JFrame window = new JFrame();
JButton buton = new JButton("Button");
buton.setToolTipText("tip");
window.getContentPane().add(buton);
window.setBounds(0, 0, 450, 450);
window.setVisible(true);
}
}
0040デフォルトの名無しさん2008/11/26(水) 13:20:43
>>39のコード
EDTで起動してないとこは大目にみて、修正してね。
0041デフォルトの名無しさん2008/11/26(水) 13:53:35
理由はよく分からないけど、
Frame を表示させないで
Window だけを表示すると
ちゃんと動作しないことがある。
0042デフォルトの名無しさん2008/11/26(水) 20:29:30
ownerなしのJWindowだと、フォーカスが取れないからじゃね?
JFrameで setUndecorated(true) と setAlwaysOnTop(true)くらいやっとけば、代わりになるんじゃね?
0043デフォルトの名無しさん2008/11/26(水) 21:15:51
Jtableって何行まで行があるとかわかるクラスある?
あったら教えて。
0044デフォルトの名無しさん2008/11/26(水) 21:27:27
>>43
行数なら、JTable,TableModelだけど、
言ってるのは、多分、有効なデータがある最大行インデックスってことだと推測するなら、
そんなapiありません。
0045デフォルトの名無しさん2008/11/26(水) 22:39:15
JTable自体にメソッドついてるよ、getRowCount()が。
0046デフォルトの名無しさん2008/11/26(水) 23:47:01
>>45
JTable#getRowCount()やTableModel#getRowCount()じゃなく、
これ系統の話じゃないのか
ttp://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=47155&forum=7&14
0047デフォルトの名無しさん2008/11/27(木) 00:05:16
「Jtableって何行まで行がある」かとしか読み取れない
0048デフォルトの名無しさん2008/11/27(木) 00:50:48
そうか。
個人的には「何行ある」と「何行まで行がある」では違うと思うけど。
本人じゃないから分からないけどさ。
0049デフォルトの名無しさん2008/11/27(木) 00:59:26
43の教えてクンぶりはあまりといえばあまりなんだけど
「何行ある」と「何行まで行がある」は双方どう違うのか興味が出てきた
0050デフォルトの名無しさん2008/11/27(木) 01:02:41
平和だな〜
0051デフォルトの名無しさん2008/11/27(木) 10:50:13
JTextFieldに入力した文字をリストに格納したいんだけど、
JTextFieldの入力が終わったって判断するにはどうしたらいいんだ?
イメージではフォーカスがかわった時イベントを起こすようにしたいんだけど
0052デフォルトの名無しさん2008/11/27(木) 10:55:27
addFocusListenerでいんじゃね?
0053デフォルトの名無しさん2008/11/27(木) 11:01:45
focusLost使ってフォーカス変わったタイミングで格納するわ
0054デフォルトの名無しさん2008/11/27(木) 12:55:10
>>51
エンターを押してもらう
0055デフォルトの名無しさん2008/11/27(木) 19:58:14
JFormattedTextField を文字列(または空文字列)でコンストラクトし、
value に関するプロパティのイベントを捕捉すれば、いい感じかも。

フォーカスが外れたりリターンキーが押されたりしたときに
(文字列が変わってれば)イベントが発生するっぽい。
0056デフォルトの名無しさん2008/11/28(金) 11:02:32
現時点において、世間で一番成功したSwingアプリってなんだろ?
CabosってSwingアプリだっけ?

ム板で聞いてもバイアスがかかると思うので、
IDE各種(Eclipse, NetBeans, etc)と2ch専ブラ(V2C,etc)は却下。

いやさ、実行系絡みのトラブルシュート対策のページを
パクらせてもらおうと思って。
0057デフォルトの名無しさん2008/11/28(金) 13:38:15
V2Cだろ
0058デフォルトの名無しさん2008/11/28(金) 13:48:43
jEdit だろ
0059デフォルトの名無しさん2008/11/29(土) 03:43:20
limewire
0060デフォルトの名無しさん2008/11/29(土) 04:37:51
外為どっとコムww。なぜかFirefoxで動かないけど。
やっぱリアルタイム性のあるとこかな
0061デフォルトの名無しさん2008/11/29(土) 09:11:32
jude
0062デフォルトの名無しさん2008/11/30(日) 19:08:08
JListにはJTreeみたいな編集機能はないんかの?

アイテムの名前変更できるようにしようとして、ぐぐってもなんも引っかからんぜ
0063デフォルトの名無しさん2008/11/30(日) 19:31:01
ないなぁ
けど実装はそんなに難しくないよ

JTableを1列で、とかだめ?w
0064デフォルトの名無しさん2008/11/30(日) 20:19:02
実装は難しくないのか。

まだ容易されてる入り口と、ぐぐって出てくる手法でしか作ってないから想像もつかないぜ

JListとJTableを組み合わせて使ってるから、JTableのアイテムを編集させてみる。
気が向いたら、その難しくない実装とやらをがんばってみるかな
0065デフォルトの名無しさん2008/11/30(日) 20:48:41
JTableのソースを見て、CellEditorを中心に見てみると結構参考になるかも。
0066デフォルトの名無しさん2008/12/02(火) 22:47:32
JScrollPaneのViewportViewにJTreeを二つ設置したJPanelを指定したのですが
スクロールペインの中央にJTreeが並んでしまって困ってます
BoxLayoutでJPanelにJTreeを設置するとテキストがまともに表示されない(後半が途切れる)ので
GridBagLayoutで白紙のパネルをJTreeの下に設置し、JTreeを左上になんとか表示してます
こんな無理矢理な方法を使わず、素直にJTreeを二つスクロールペインの左上に設置する方法は無いでしょうか?
何方かご教授下さい…
0067デフォルトの名無しさん2008/12/03(水) 16:48:33
今ひとつ分からないけどこれでだめ?
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

JPanel viewportView = new JPanel(new FlowLayout(FlowLayout.LEFT,0,0));

JTree tree1 = new JTree();
JTree tree2 = new JTree();

viewportView.add(tree1);
viewportView.add(tree2);

frame.add(new JScrollPane(viewportView));
frame.pack();
frame.setVisible(true);
0068デフォルトの名無しさん2008/12/03(水) 16:50:03
みすってたー
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);

FlowLayout fl = new FlowLayout(FlowLayout.LEFT,0,0);
fl.setAlignOnBaseline(true);
JPanel viewportView = new JPanel(fl);

JTree tree1 = new JTree();
JTree tree2 = new JTree();

viewportView.add(tree1);
viewportView.add(tree2);

frame.add(new JScrollPane(viewportView));
frame.pack();
frame.setVisible(true);
0069デフォルトの名無しさん2008/12/03(水) 22:15:15
>>68
ありがとうございます!明日試してみます!…ノートPC持って帰ってくるの忘れたorz
口で説明しても伝えられない気がしてきたので簡易ながら図解にしてみました。
ttp://toku.xdisc.net/cgi/up/ttt/nm6024.jpg.html
上の理想像のように配置したいのですが、BoxLayoutだと下図のようにテキストが途切れます…
0070デフォルトの名無しさん2008/12/03(水) 22:46:19
JTreeを2つ使う理由がわからん。
JTreeを1つで、setRootVisible(false)にすればええやん。
0071デフォルトの名無しさん2008/12/04(木) 06:45:15
こんな感じかな

panel.setLayout(new BorderLayout());
panel.add(tree1, BorderLayout.NORTH);
panel.add(tree2, BorderLayout.CENTER);
scrollPane = new JScrollPane(panel);
0072デフォルトの名無しさん2008/12/04(木) 19:34:31
>>70
それやったら何も表示されなくて…
JTree二つあった方がラクかなぁ?と思って組み始めたんです。

>>71
tree2が中央に来ました…orz
0073デフォルトの名無しさん2008/12/04(木) 21:30:24
>>72
>>70 でやったときにTreeNodeが表示されないと言っている?TreeModelの使い方は理解してる?

ここ↓をひととおり読んでみた?
http://java.sun.com/docs/books/tutorial/uiswing/components/tree.html
0074デフォルトの名無しさん2008/12/04(木) 22:31:32
いつの間にか jdk 6u11 が出てるな…
0075デフォルトの名無しさん2008/12/05(金) 00:49:36
今日JavaFXリリースだというのにまったく盛り上がってないなw
0076デフォルトの名無しさん2008/12/05(金) 00:53:24
忙しくて試す時間ないんだけど、どんな感じ?
0077デフォルトの名無しさん2008/12/05(金) 05:22:12
もういらねーんだよ。うじゃうじゃとアホなスクリプト言語とか。
0078デフォルトの名無しさん2008/12/06(土) 12:47:42
JavaFX結構おもしろいじゃん
ただ何やってるか分からんけど起動がえらい遅い
0079デフォルトの名無しさん2008/12/06(土) 23:29:05
ブラウザからデスクトップにドロップするやつ試したやついる?
あとアニメとかはどうだ。滑らかに動くのか。
とにかく生情報がほしいな。

自分はOSバージョンの関係で試せないけど、試したやつ報告よろしく
0080デフォルトの名無しさん2008/12/07(日) 01:58:37
JavaFXはスレ違い
0081デフォルトの名無しさん2008/12/07(日) 02:03:37
Java FXってGUIはSwingそのものなの?
0082デフォルトの名無しさん2008/12/07(日) 02:17:15
このスレの解答者はカスしかないけどから一応こたえてやると・・・
siwngはjavacでコンパイルされてバイトコードになるためjvm共通のwidgetになるから
javafxcでJFrame{}とかすれば当然JFrame.classが呼ばれてswingそのものを呼び出しているといえる。
0083デフォルトの名無しさん2008/12/07(日) 07:32:52
「WOLF RPGエディター」とは? 
・高度なRPG開発が可能な、完全無料のゲーム作成ツールです。
・雰囲気はRPGツクール2000に近い。RPGツクール2000で自作システムを作りこむ際に
 不満だったところがいろいろ解消されていて、かなり自由度が高いです。ただし
 その分初心者には難しいかも。すでにツクール2000で自作システムを組むのに
 慣れた人やRPGツクールでは物足りないけどプログラミングはちょっという方にお勧め。
・作成したゲームは自由に配布したり、コンテストに投稿することも可能。
 また本ソフトを持たない人でもプレイ可能!ファイル暗号化も完備してるよ!
・要望、不満点、バグ報告などなど書き込みお願いします。今もどんどん進化中です。
・それとマップやキャラなどのドット素材もじゃんじゃん募集中ですので
 一度サイトにお越しくださいませ。
・このツールで作ったゲームをサイトで紹介してるから、ダウンロードしてどういう
 ゲームが作れるのか見てみてね。

2ちゃん本スレ
http://pc11.2ch.net/test/read.cgi/gamedev/1226294070/l100
0084デフォルトの名無しさん2008/12/07(日) 14:02:31
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
このスレの解答者はカスしかないけどから
0085デフォルトの名無しさん2008/12/07(日) 14:36:13
>>84
>>82 の回答を見ると納得してしまうなw
0086デフォルトの名無しさん2008/12/07(日) 14:38:40
>>84
×解答
○回答
0087デフォルトの名無しさん2008/12/07(日) 15:51:51
そろそハードウェア対応のCompositeを増やしてくれないものか…
加算半透明が欲しいけど、そういう人は少ないのかなあ。
0088デフォルトの名無しさん2008/12/07(日) 16:07:38
javafxはどこで話せばいいの?
0089デフォルトの名無しさん2008/12/07(日) 17:21:02
ここかJDK7のスレッドだろうね
0090デフォルトの名無しさん2008/12/07(日) 19:26:39
jdk1.4からpaintが改善されてきてjdk1.6でほぼnativeと同等になったから、そろそろそういうブレンドとかのクラスも出てくるんじゃないか?
今はCPUに計算させて力でごり押しでもいいだろうけど、本来のやり方は力業計算はjoglとかハードの方を使って(経由して)計算させるものなのかと思う。
そういうの説明してるサイトはあまりないけどね。
0091デフォルトの名無しさん2008/12/07(日) 21:36:37
すごく初歩的なことかもしれないんですが、packって必ず呼ばないといけないんでしょうか?
0092デフォルトの名無しさん2008/12/07(日) 21:53:12
いいえ
packしたい時に呼べばいいだけです
0093デフォルトの名無しさん2008/12/07(日) 22:33:58
packは使うべきかどうかどう判断すればよいのでしょうか?
0094デフォルトの名無しさん2008/12/07(日) 22:45:50
packがやることは分かる?
0095デフォルトの名無しさん2008/12/07(日) 22:53:31
各コンポーネントの推奨サイズを見て、ウィンドウ全体のサイズを決定、でしょうか?
0096デフォルトの名無しさん2008/12/07(日) 23:12:21
ウィンドウを推奨サイズにしたい場合は pack()
自分でサイズを指定したい場合は
setSize() とか setBounds() とか
0097デフォルトの名無しさん2008/12/09(火) 19:16:25
JDK1.6u11になってNimbusを今まで作ってきたアプリでためしてみたんだが微妙だなぁ。
こっちの書き方も悪いんだけど、それを差し引いてもあちこちにデザインの破綻が起きる。
画像アイコンを入れたボタンやカスタマイズした部品の修正が大変。
Metalのほうが細かい操作面や様々なケースで、神経が行き届いていたように思われ。
0098デフォルトの名無しさん2008/12/09(火) 22:19:01
addElement
public void addElement(Object obj)指定されたコンポーネントをリストの末尾に追加します。
パラメータ:
obj - 追加されるコンポーネント

DefaultListModelのaddElementのリファレンスを読んでコンポーネントも追加できるのか…?と思い
JPanelをaddしてみたんですが、文字列らしきもの(ポインタ的な何か…?)が表示されるだけで上手く行きません。
そもそもコンポーネントの追加という意味を私が取り違えているのでしょうか?お教え下さい
0099デフォルトの名無しさん2008/12/09(火) 22:29:41
普通はUIを頻繁に変えたりしない思うけどね。
昔のxのウィンド・マネジャの乱立とかwinデスクトップテーマの流行を思い返す。
system uiのwinでぽっぽアップしたときのメニュー文字のギャップをもう少し広げてくれると
win ui (win classic ui)とほぼ同じでハッピーなんだけど。
0100デフォルトの名無しさん2008/12/09(火) 22:49:05
>>98
コンポーネントは広い意味でのコンポーネントって表現だと思う。
英語版のjavadocが"Component"になっているから、そう訳したんだと思う。
Objectが引数だから、JPanelだろうが、通常やらないだろうけど、Timerだろうが何でも格納はできる。

表現が的確か分からないけど、ListModelは単なるデータストアであって、
ListModelから取り出したデータを、どう表現するかはCellRendererの役目。

一度、java tutorialとかで基本的なところを勉強するといいと思う。
0101デフォルトの名無しさん2008/12/09(火) 22:52:29
>>98
デフォルトのレンダラでは対応していないのでJPanelを要求通りに表示できるレンダラに変更
■ このスレッドは過去ログ倉庫に格納されています