プログラムJToolBar
の一部として、BasicToolBarUI をサブクラス化して、独自のカスタム UI を作成することにしました。Swing
OS X (10.6) および Windows (7) では問題なく動作しますが、Linux になると問題が発生します。
スイング成分なら
- 使用
SystemLookAndFeel
(Java LAF で表示) - UI の使用
BasicToolBarUI
(問題を単純化するため。これでは既に機能しません) - Linux (Ubuntu 10.10) で実行
全体JToolBar
が見えなくなりました。
誰でもこれに手を差し伸べることができますか?Linuxで再び表示するにはどうすればよいですか? 前もって感謝します。
(ユーザーがツールバーをウィンドウの他の端に移動できるようにするために、カスタム UI を実行しましたが、フローティング状態にならないようにしました。)
乾杯、
朔
私のSSCCE:
// Set the system look and feel:
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
e.printStackTrace();
}
// Create frame
JFrame frame = new JFrame();
JPanel panel = new JPanel();
panel.setPreferredSize(new Dimension(200, 100));
// Create toolbar
JToolBar toolbar = new JToolBar(JToolBar.HORIZONTAL);
toolbar.add(new JButton("Foo"));
// With this line toolbar doesn't appear any more (only) on Linux.
toolbar.setUI(new BasicToolBarUI());
// Show UI
panel.add(toolbar);
frame.getContentPane().add(panel);
frame.pack();
frame.setVisible(true);