問題タブ [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.

0 投票する
1 に答える
179 参照

java - Java JTextArea が JMenuItem と重複

ファイルと呼ばれるjmenuがあり、quitというメニュー項目が1つあり、クリックするとアクティブになります

System.exit(0);

何かを入力してEnterをクリックすると、jtextfieldまでは問題ありません。その後、jmenubarのファイルボタンをクリックすると、終了ボタンがjtextareaの下に隠されます。

説明するのは非常に難しいので、入力前と入力後の画像を次に示します。 ここに画像の説明を入力

私はそれを調べましたが、フォーカスに関係している可能性がありますが、終了ボタンを再度フォーカスしようとしてもうまくいきませんでした.

0 投票する
1 に答える
798 参照

java - JMenu を使用して、テキストペインと同じものを使用するにはどうすればよいですか?

FileWriter と PrintWriter を使用して、テキストペインにあるものを保存しようとしています。

私はすでにファイルを開く方法を持っており、テキストペインに表示されるテキストを同じにしようとしています。 これは私の完全なコードです:

}

0 投票する
1 に答える
51 参照

windows-8 - Windows 8 で Java Swings JMenuBar が表示されない

長い間正常に動作している私のアプリケーションの 1 つは、最近 Windows 8 にインストールしたところ、完全な JMenuBar が表示されないことがわかりました。

よろしくラジーブ

0 投票する
7 に答える
44112 参照

java - JMenuBarおよびその中のJMenuオブジェクトの背景とテキストの色を変更します

JMenuBarJMenuその中のオブジェクトのカスタム背景色を設定するにはどうすればよいですか?試し.setBackgroundColorましたが動作しません!

0 投票する
1 に答える
653 参照

java - JRadioButtons または JCheckBoxes を使用すると JMenu が消える

Pizza JMenu を使用して JMenuBar を作成しました。JMenu には、menuItems がスクロールされると表示される 3 つの JRadioButtons と 2 つの JCheckBoxes があります。問題は、JRadioButton または JCheckBox をクリックすると、メニュー全体が消えることです。これが起こらないようにする特定の方法または他の方法はありますか?

0 投票する
2 に答える
360 参照

java - Java メニューバーが表示されない

やあ、私は他のクラスから私のJFrameにメニューバーを作ろうとしていますが、うまくいきません! 私は行き止まりです...

何がうまくいかないのか本当にわかりません。他の方法をいくつか試しましたが、うまくいきませんでした...

そしてMenu.classで:

0 投票する
2 に答える
847 参照

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ときにデフォルトのメニュー バーも表示します。JFrameJMenuBar

ただし、setDefaultMenuBar機能にはいくつかの大きな問題があります。

  1. アクセラレータが機能しませんすべてのキー押下を自分で処理することで、アプリケーションでこの問題を回避しましたが、それでも残念です。
  2. 2012 年 12 月の時点で、setDefaultMenuBar は Java7 ではまだ使用できませんでした。非推奨またはサポートされていない API の使用は明らかに避けたいと考えています。
  3. 最も重要なのは、呼び出しsetDefaultMenuBar によって JVM が適切にシャットダウンされなくなることです。その後の呼び出しでもsetDefaultMenuBar(null)、必要なリソースは解放されません。

要するに、setDefaultMenuBar安全で堅牢な方法とはまったく思えません。

したがって、問題は次のとおりです。一貫した画面を実装するための最も信頼性が高く、パフォーマンスが高く、互換性のある (OS X のバージョン間で) 方法はJMenuBar何ですか?