5

mIRC からの次のスクリーンショットは、私の問題を理解するのに役立つと思います。

mIRC の複数のサブウィンドウ

メイン ステージ (1) があり、いくつかのペイン (または他のコンテナー) (2) で、いくつかのサブウィンドウ (3) を追加して、所有しているウィンドウの外に移動できず、表示されないようにしたいと考えています。 /OS タスクバーで選択可能

JavaFX 2.2でそれを行う方法はありますか? 窓(別段)が無い場合、他の可動式コンテナでも可能ですか?

4

2 に答える 2

2

JavaFX 2.2 には、これを容易にするフレームワークはありません。

JavaFX issue tracker を使用して、JavaFX Docking Framework機能のリクエストを追跡し、投票することができます。

このようなフレームワークは、パブリック JavaFX API を使用して自分で作成できます。Stages を使用すると、目的の動作を正確に取得するのは少し難しいかもしれませんが、メイン アプリケーション ステージ内に配置されたカスタムの可動 Panes を使用すると可能になると思います。

ただし、ドッキング フレームワークの正式な実装が提供されるまでは、NetBeans などの既存のアプリケーション フレームワークを使用し、既存のフレームワークによって作成されたフレーム内の JFXPanels 内に JavaFX コンポーネントを埋め込む方がよい場合があります。

あなたの特定の質問のいくつかに答えるために。

OS タスクバーで表示/選択できません。

新しいサブウィンドウを表示する前に、サブウィンドウを呼び出します。initOwnerを使用して、サブウィンドウの所有者をアプリケーションのプライマリ ステージに設定します。

所有しているウィンドウの外に移動することはできません

サブウィンドウとプライマリ ウィンドウの x、y、幅、高さのプロパティにリスナーを追加できます。サブウィンドウを親ウィンドウの境界の外に移動しようとすると、リスナー コードでサブウィンドウの位置を変更します。JavaFX リスナーが通知を受け取る前に、サイズと場所の変更通知がオペレーティング システムによって処理される場合、この戦略は少し不格好になる可能性があります (その可能性が高いと思います)。

于 2012-10-02T00:51:45.093 に答える