問題タブ [jmenubar]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java JTextArea が JMenuItem と重複
ファイルと呼ばれるjmenuがあり、quitというメニュー項目が1つあり、クリックするとアクティブになります
System.exit(0);
何かを入力してEnterをクリックすると、jtextfieldまでは問題ありません。その後、jmenubarのファイルボタンをクリックすると、終了ボタンがjtextareaの下に隠されます。
説明するのは非常に難しいので、入力前と入力後の画像を次に示します。
私はそれを調べましたが、フォーカスに関係している可能性がありますが、終了ボタンを再度フォーカスしようとしてもうまくいきませんでした.
java - JMenu を使用して、テキストペインと同じものを使用するにはどうすればよいですか?
FileWriter と PrintWriter を使用して、テキストペインにあるものを保存しようとしています。
私はすでにファイルを開く方法を持っており、テキストペインに表示されるテキストを同じにしようとしています。 これは私の完全なコードです:
}
windows-8 - Windows 8 で Java Swings JMenuBar が表示されない
長い間正常に動作している私のアプリケーションの 1 つは、最近 Windows 8 にインストールしたところ、完全な JMenuBar が表示されないことがわかりました。
よろしくラジーブ
java - JMenuBarおよびその中のJMenuオブジェクトの背景とテキストの色を変更します
JMenuBar
とJMenu
その中のオブジェクトのカスタム背景色を設定するにはどうすればよいですか?試し.setBackgroundColor
ましたが動作しません!
java - JRadioButtons または JCheckBoxes を使用すると JMenu が消える
Pizza JMenu を使用して JMenuBar を作成しました。JMenu には、menuItems がスクロールされると表示される 3 つの JRadioButtons と 2 つの JCheckBoxes があります。問題は、JRadioButton または JCheckBox をクリックすると、メニュー全体が消えることです。これが起こらないようにする特定の方法または他の方法はありますか?
java - Java メニューバーが表示されない
やあ、私は他のクラスから私のJFrameにメニューバーを作ろうとしていますが、うまくいきません! 私は行き止まりです...
何がうまくいかないのか本当にわかりません。他の方法をいくつか試しましたが、うまくいきませんでした...
そしてMenu.classで:
java - OS X画面のJMenuBarをウィンドウ間で一貫して動作させる最良の方法は何ですか?
Swing ユーザー インターフェイスを備えたクロスプラットフォーム Java アプリケーションがあります。OS X では、アプリケーションはスクリーン メニュー バーを使用して、よりネイティブなユーザー エクスペリエンスを提供します。
通常、アプリケーションはJFrame
ドキュメントごとに 1 つ作成します。画面のメニュー バーは、これらすべてのウィンドウで一貫している必要があります。私はそれを行ういくつかの方法を試しましたが、適切ではあるが完全ではない、一貫したパフォーマンスの高いソリューションを 1 つだけ見つけました。他の誰かがより良いアプローチをしている場合に備えて、この情報が他の人に役立つことを願って、この質問を投稿しています。
うまくいかないいくつかのアプローチ:
複数のウィンドウに同じメニュー バーをアタッチする
JMenuBar
同じものを複数のJFrame
インスタンスに追加しようとしましたが、 Swing は一度に 1 つの JFrame にアタッチされた JMenuBar のみをサポートし、スクリーン メニュー バーとしてもサポートします。
MenuBar
ではなくAWT でもテストしましたJMenuBar
が、同じ現象が発生します。AndMenuBar
に比べて多くの制限がJMenuBar
あります (例: アイコンがない) ので、JMenuBar
.
メニューバーを複製する
JMenuBar
一般的な解決策の 1 つは、 for each newのコピーを作成することJFrame
です。ただし、これには少なくとも 2 つの問題があります。まず、メニュー バーの同期を維持する必要があります。リスナーを使用してそれを行うことはできますが、OS X プラットフォームを処理するためだけに多くの余分なコードが必要になります。ただし、2 番目のより深刻な問題はパフォーマンスです。数百のメニュー項目を含む複雑なメニュー バーがある場合、メニュー バーの複製は非常に遅くなります。このアプローチにより、新しいウィンドウの表示が数秒遅れることがわかりました。
デフォルトのメニュー バーを使用する
OS X v10.6 Update 1 および 10.5 Update 6の Java で、Apple の Java ライブラリに新しいメソッドが追加されましたApplication.setDefaultMenuBar(JMenuBar)
。
このメソッドの目的は、no がアクティブなときにメニュー バーを提供することですが、独自のnoがアクティブなJFrame
ときにデフォルトのメニュー バーも表示します。JFrame
JMenuBar
ただし、setDefaultMenuBar
機能にはいくつかの大きな問題があります。
- アクセラレータが機能しません。すべてのキー押下を自分で処理することで、アプリケーションでこの問題を回避しましたが、それでも残念です。
- 2012 年 12 月の時点で、setDefaultMenuBar は Java7 ではまだ使用できませんでした。非推奨またはサポートされていない API の使用は明らかに避けたいと考えています。
- 最も重要なのは、呼び出し
setDefaultMenuBar
によって JVM が適切にシャットダウンされなくなることです。その後の呼び出しでもsetDefaultMenuBar(null)
、必要なリソースは解放されません。
要するに、setDefaultMenuBar
安全で堅牢な方法とはまったく思えません。
したがって、問題は次のとおりです。一貫した画面を実装するための最も信頼性が高く、パフォーマンスが高く、互換性のある (OS X のバージョン間で) 方法はJMenuBar
何ですか?