- - PR -
JInternalFrameについて
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-02-23 10:02
いつもお世話になっております。
The SwingSet Demo(SwingSet Episode2)というSwingのデモの中にInternalFrameDemoというものがありますが、paletteと思われるInternalFrameだけタイトルバーが細いのですが、これってどのように設定するのかご存知の方いらっしゃいますでしょうか。 タイトルバーの高さを設定することができるのでしょうか。 ソースコードを見ているのですが、どうしても不明なので質問させてください。 The SwingSet DemoのURL http://java.sun.com/products/javawebstart/demos.html | ||||||||
|
投稿日時: 2004-02-23 12:07
ソースコードからcreateInternalFrameのメソッドをコピーして、
適当にコンパイルと実行が可能なように修正し、不必要な部分を 削っていけば、肝心な部分にたどり着くことができます。
| ||||||||
|
投稿日時: 2004-02-23 15:23
こんにちは、さくらばです。
ちなみにこれは Metal でしか有効になりません。 | ||||||||
|
投稿日時: 2004-02-23 19:11
Wataです。
すみません。前の「createInternalFrameのメソッドをコピーして...」 という書き込みはcreateInternalFramePaletteの間違いです。
SwingSet2でも、Look&Feelを変更すると普通のタイトルバーが表示されますね。 ところで、こういう各コンポーネントで利用できるプロパティの一覧ってどこかに ドキュメント化されてるのでしょうか?もし、公にドキュメント化されていないと すると、今後のバージョンでの動作は保証されるのでしょうか | ||||||||
|
投稿日時: 2004-02-24 21:51
Wataさん、さくらばさん、ご返答有難うございます。
設定できました。
!! そうなのですね。 L&Fを変更して確認しました。 とりあえず、現在作成中のアプレットはMetalにする予定ですので、採用します。
皆様もドキュメントの記述を見たことがないのですか? このClientPropertyは一覧を取得する手段が見当たらない感じですが、どのように取得するのでしょう?getClientProperty(Object)の引数に指定するkey値が不明だと手も足もでませんし。getClientroperties()のようなメソッドも見当たらないし。 LookAndFeelの各デフォルトプロパティの一覧は「グラフィックJava2Vol.2Swing編(下)」に載っていましたが、これは載っていませんでした。 ドキュメントがないことには、なんともはや。 とりあえず、有難うございました。 | ||||||||
|
投稿日時: 2004-02-25 04:32
こんにちは、さくらばです。
いちおうあることはあるのですが.... MetalInternalFrameUI の JavaDoc に IS_PALETTE というのがあって これが JInternalFrame.isPalette に対応しています。 http://java.sun.com/j2se/1.4/ja/docs/ja/api/javax/swing/plaf/metal/MetalInternalFrameUI.html でも、こんなところに書かれても絶対気がつきませんね。 まとまった、ドキュメントも見たことないです。 いちおう、JComponent クラスには getClientProperties というメソッドが あるのですが、private です | ||||||||
|
投稿日時: 2004-02-27 21:23
すみません。
追加で質問なのですが、JDialogのアイコンのコーヒーカップのアイコン(JavaCup.gif?)を変更することが可能かご存知でしたら、ご教授ねがえないでしょうか? | ||||||||
|
投稿日時: 2004-03-01 04:43
こんにちは、さくらばです。
Java だけだと無理です。Frame クラスの派生クラスでないと、アイコンを変更でき ないようです。 もちろん、JNI を使えばできます。Windows の場合、Win32API の SendMessage を行うことで実現できます。
# m_hIcon を作るのはそれなりの手間がかかります。 # J2SDK 1.4.2 のコードは公開されているので、それを参考にするのが # 一番だと思います。 | ||||||||
