「LinuxのJava SE 5 (1.5.0_09) で背景色が出ない」と
「LinuxのJava SE 5 (1.5.0_09) で背景色が出ない (2)」の件。
結局、GTKLookAndFeel では JPanel のデフォルトが opaque が false に
なっているためのよう。
どうもすべてのプラットフォームで共通なデフォルト値はないらしい。
以下の方法のどれかで明示的に opaque を true にすればよい。
(A) メソッド isOpaque() をオーバーライド
JPanelを拡張したクラスで
のようにメソッド isOpaque() をオーバーライドする。
(B) インスタンスを生成後、
のようにして設定する。
(C) 拡張クラスのコンストラクタで setOpaque(true) を呼ぶ。
「LinuxのJava SE 5 (1.5.0_09) で背景色が出ない (2)」の件。
結局、GTKLookAndFeel では JPanel のデフォルトが opaque が false に
なっているためのよう。
どうもすべてのプラットフォームで共通なデフォルト値はないらしい。
以下の方法のどれかで明示的に opaque を true にすればよい。
(A) メソッド isOpaque() をオーバーライド
JPanelを拡張したクラスで
public boolean isOpaque() { return true; }
のようにメソッド isOpaque() をオーバーライドする。
(B) インスタンスを生成後、
インスタンス.setOpaque(true);
のようにして設定する。
(C) 拡張クラスのコンストラクタで setOpaque(true) を呼ぶ。
※コメント投稿者のブログIDはブログ作成者のみに通知されます