JDesktopPaneの内部にあるアクティブな(フォーカスを持っている)フレーム(JInternalFrame)を取得する方法は?私は私のMDIメモ帳(誰もそれを使用するわけではなく、単に訓練プロジェクト)のためにそれが必要です。 APIを見ると、アクティブなものではなく、すべてのJInternalFramesを取得する関数しか表示されません。JDesktopPane - アクティブなフレームを取得する方法
答えて
使用JDekstopPane.getSelectedFrame()方法(DOCから:このJDesktopPaneの中に現在アクティブなJInternalFrame、または全くJInternalFrameが現在アクティブでない場合はnull)またはJDesktopPane.getAllFrames()
は現在デスクトップに表示されているすべてのJInternalFrames
のリストを取得し、方法を確認してください。
List<JInternalFrame>
を作成し、それに反してisSelected()
をチェックしてください。
補足:Action
を使用するこのexampleも参照して、メニューから内部フレームを選択してください。
JavaチュートリアルのHow to Use Internal Framesを見ましたか?あなたのコードではInternalFrameListener
(API)(Tutorial)が必要で、イベントを有効/無効にするのを聞きます。 Activatedは内部フレームが一番上に来たことを意味します。非アクティブ化とは、もはや上にはないということです。 JDesktopPane
がJLayeredPane
に拡張されているため、追加されたコンポーネントのzオーダーを設定することもできます。
すべてのペインでイテレートしないでください - イベントを使用してください。
イベントドリブンアプローチを使用するのではなく、何らかの理由でUIをポーリングしたい場合は、アクティブJInternalFrame
を返すgetSelectedFrame
を呼び出すことができます。なぜ誰もそれを言及した理由はわかりません。
+1疎結合の場合+1。あなたは精緻化できますか? – trashgod
@trashgod 'JInternalFrames'が作成されるので、かなり簡単です。' InternalFrameListener'は、どのフレームがアクティブであり、どちらではないかを記録するそれぞれに付けられます。ポスターがイベントを気にしない場合に、私の答えを少し更新しました。 - 'JDesktopPane'は' getSelectedFrame'メソッドを持っています。 – Paul
>コードでInternalFrameListener(API)(チュートリアル)が必要で、イベントのアクティブ化/非アクティブ化をリスンします。 > Activatedは、内部フレームが一番上に来たことを意味します。非アクティブ化とは、もはや上にはないということです。 > JDesktopPaneはJLayeredPaneを拡張しているので、追加されたコンポーネントのzオーダーを設定することもできます。 " "コードをもっと混乱させずに簡単にする方法 "の別のヒント。私のコードはとてもシンプルなので、たとえJavaを使っていないとしても理解できます。 –
- 1. JDesktopPaneでJInternalFramesのzオーダーを取得する方法
- 2. Python、GIFフレームを取得する方法
- 3. JDesktopPaneのコンポーネントをリフレッシュする方法
- 4. JDesktopPaneのサイズを設定する方法
- 5. JDesktopPaneの配置
- 6. アクティブなスペース上のすべての可視ウィンドウのフレーム(原点、サイズ)を取得する方法は?
- 7. クラシックホバー、アクティブなどを取得する方法。 javascriptの動作
- 8. e4 rcpアプリケーションでアクティブなウィンドウを取得する方法は?
- 9. Jupyterノートブックでアクティブなカーネル名を取得する方法
- 10. アクティブなCUDAデバイスからプロパティを取得する方法は?
- 11. WOfficeテーマでアクティブなユーザーデータベーステーブルを取得する方法WordPressテーマ
- 12. アクティブなCoonectionから部分データを取得する方法は?
- 13. activitiのアクティブなプロセスのリストを取得する方法は?
- 14. ブートストラップでアクティブなページを取得する方法カルーセル
- 15. オブジェクトとしてアクティブなモジュールを取得する方法
- 16. アクティブなコールアスタリスク[Elastix]の資格を取得する方法?
- 17. アプリケーションのアクティブなChildWindowを取得する方法は?
- 18. jquery ui accordionでアクティブなパネルを取得する方法
- 19. AutoHotKeyでアクティブなウィンドウのタイトルを取得する方法は?
- 20. Java:スレッド内でアクティブなエディタを取得する方法は?
- 21. GETメソッドのアクティブなクライアントリクエストの数を取得する方法
- 22. libpcap:アクティブなネットワークインターフェイスを取得する方法(Mac OSX)
- 23. データベース上のアクティブなトリガのリストを取得する方法は?
- 24. 角2、グローバルにアクティブなルートを取得する方法は?
- 25. TensorFlowで現在アクティブなtf.variable_scopeを取得する方法は?
- 26. Google AppsスクリプトでアクティブなファイルIDを取得する方法
- 27. Google-Fitからアクティブな分を取得する方法
- 28. Google Analyticsで1ページにアクティブなユーザーを取得する方法
- 29. Magento 2.0で現在アクティブなテーマを取得する方法
- 30. app.componentでアクティブなルートを取得する方法
ありがとうございます。あなたは本当に私を助けました。私はgetActiveFrameやgetFocusedFramのようなものを探し、getSelectedFrame;を見落としました;) –
+1を使用しています。 – camickr