7

開発するQTアプリケーションでは、いくつかの「ビューアウィンドウ」を表示する必要があります(データをXY平面、YX平面、XZ平面、および3Dで表示するため)。

MDIアプリケーションモデルを使用することを望んでいましたが、後でクライアントは、複数のデスクトップで(複数のモニターを使用して)「ビューアーウィンドウ」をドラッグして表示する必要があることを要求しました。MDIウィンドウをメインアプリケーションウィンドウの外に移動することはできないため、これはMDIウィンドウモデルを使用して行うことはできません。

Dockウィンドウはメインアプリケーションウィンドウからドッキング解除して他のデスクトップに移動できるため、唯一可能な方法はDockウィンドウを使用することですが、Dockウィンドウは主にツールパレットまたはユーティリティウィンドウに使用されます。

http://doc.qt.nokia.com/4.6/qdockwidget.html#details

要件にDockウィンドウを使用することは良い習慣ですか?

4

1 に答える 1

4

クライアント領域を使用しないように思われるため、QDockWindowは使用しません。さらに、メインウィンドウの境界線にドッキングするのではなく、ウィジェットをメインウィンドウに追加するだけです。

QGridLayoutで複数のQWidgetを使用してみることができると思います。QWidgetをメインウィンドウの外にドラッグするときは、レイアウトからQWidgetを削除するだけです。メインウィンドウ内にドラッグするときは、QWidgetをQGridLayoutの適切な場所に追加します。この方法では、ウィジェットの場所をメインウィンドウに切り替えることもできます。

十分に明確かどうかはわかりませんが、新しい要素をレイアウトにドラッグするときにQtDesignerで行われるのと同じ方法で考えています。ウィジェットをドラッグすると、マウスボタンを離したときにウィジェットが追加される場所を確認できます。

私の考えでは、この方法はあなたが探している方法かもしれません。

お役に立てば幸い

于 2010-06-01T08:23:27.090 に答える