2010-11-23 15 views
0

JDesktopPaneをほとんど使用していないように見えますが、推奨されなくなりました。 JFrameの代わりにJDesktopPaneを使用する利点はありますか?私は主に、いくつかのJInternalFramesを配置する予定です。MDIを作成するときは、JDesktopPaneまたはJFrameを使用する必要があります

EDIT:JDesktopPaneがフレームよりもPanelの役割をいっそう満たしているとは思いませんでした。

JDesktopPaneは、JpanelではなくJFrameのcontentPane内に配置する必要があります。答えをくれてくれてありがとう!

答えて

1

目的が異なるため、2つの比較をするのは難しいです。

私は、いくつかのフレームを必要とするアプリケーションでJDesktopPaneを頻繁に使用しますが、ユーザーのタスクバーを詰まらせず、フレームを細かく制御したいと思います。はい、それはJFrameより少なく使用されますが、私はそれが非難されるとは思わない(少なくともいつでもすぐにはない)。

1

JDesktopPaneとJInternalFrameは、MDIアプリケーションのSwings実装です。すべての内部フレームは、OSではなくデスクトップペインで管理されます。

一般に、アプリケーションには1つのJFrameだけが必要です。他のウィンドウが必要な場合は、JDialogを使用します。

+0

私はJInternalフレームのコンテナに何を使用する必要がありますかと質問していますか? JDesktopPaneまたはJFrame?私は実際にJInternalFramesを格納しているウィンドウ以外に別のウィンドウは必要ありません – davidahines

+2

2つは一緒に使用するように設計されているので、なぜホイールを再構築し、デスクトップペインの機能をJFrameでサポートするのか。 JFrameに複数の内部フレームを追加しようとしましたか?それは動作しましたか?内部フレームを使用してデスクトップペインでどのように動作するかを見るためのSwingチュートリアルを試しましたか? – camickr

+0

しました。 JFrameに複数の内部フレームを追加すると、同様に動作します。アイコン化、最大化などのアクションは機能しませんが、フレームはまだJFrameまたはJPanelの内部にあります。私はデモを試みましたが、トップレベルのコンテナではないことが明らかになっていないことがわかりました。 – davidahines

関連する問題