今、私は設定ファイルに基づいていくつかのフルスクリーンJFramesを生成するフルスクリーンアプリケーションを持っています。 、(フルスクリーンで)JFramesのより簡単な代替手段ですか?
setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
setUndecorated(true);
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setBounds(0,0,screenSize.width, screenSize.height);
問題があるこれらのJFramesは、Linux環境での動作不良されています。これらのJFramesはこのように、フルスクリーンモードです。私はrequestFocus
、requestFocusInWindow
、toFront
、setVisible
などで一生懸命苦労しました。しかし、Linuxでは正しく動作するものはありません。問題はいくつかのフレームがあり、ボタンをクリックしたときに切り替える必要があるということです(基本的にメニューです)。
私は、JFrameが使用するのに最適なオブジェクトではないと考え始めています。もしそれがあったとしても、複数のフレームを管理する方が簡単でしょうか?optionPanes?または何か類似している?ソリューションが何であれ、私はDO_NOTHING_ON_CLOSE
とsetUndecorated
(または類似のもの)にできる必要があります。
注:理由がわからない場合は、私のJFrameを変更する必要があり、どのようにフォーカス/表示を切り替えることができるのか分かります。これは私の問題に対する答えにもなります。
CardLayoutなどで複数のJFrameを複数のビューで表示するのはなぜですか? –
@Hovercraft:CardLayoutが私の問題をどのように解決できるかは分かりません。たぶん私はあなたが何を言おうとしているのか見ていないでしょう。私のアプリケーションは、絶対配置を使用して配置できるということに基づいているため、現在、JFramesではLayoutManagerを使用していません。 – n0pe
JTabbedPaneを含む 'JFrame'を使うことができます。ここでは、各タブ(例えば' JPanel'など)は現在のフレーム情報を持っています。それは唯一の可能性です、多分最高の解決策があります。レイアウトを好むなら、 'CardLayout'がベストな選択でしょう。 – Charliemops