2016-12-19 20 views
0
私は次のセットアップを持ってしようとしています

:開始時のQt 5.7 QDockWidgetデフォルトサイズ

(メインウィンドウが開いたときに)私はQMainWindowsの幅400ピクセル、高さ1/2(各)と左で2 QDockWidgetsを持つようにしたいです高さ。左側には、QMainWindowsの高さの幅400px、高さ1/3の3つのQDockWidgetsがあります。 5つのウィジェットのすべては、のサイズを変更する必要があります。つまり、この場合はsetFixSize()を使用することはできません。

これまでのところ私はGeometry>WidthGemetry>Heightのデザインを変更しようとしましたが、動作しませんでした。

次に、私はメインウィンドウのコンストラクタでresize()を使用しようとしましたが、どちらも機能しませんでした。

Gemetry>Height/Widthおよびresize()は、ウィジェットのサイズに影響を及ぼし、メインウィンドウのレイアウトを上記のように実現するのはなぜですか?

答えて

0

ドックウィジェットはメインウィンドウのレイアウトに追加されるので、サイズ変更しても効果はありません。このための回避策の1つは、各ドックウィジェットに追加されるコンテンツウィジェットのsizeHintを再実装することです。

これを見る別の方法は、ユーザが任意の方法でドックウィジェットを手配してから、saveStaterestoreStateを使用して初期状態を管理することです。

+0

また、ドッキングウィジェットのコンテンツが「QWebEngineView」などの場合は、私は 'sizeHint'を再実装することだけを継承するとは考えていません。良いアイデアですか、そうではありませんか? – carobnodrvo

+0

@carobnodrvo。実際のコンテンツのコンテナとして単純な 'QWidget'サブクラスを使用してください。 – ekhumoro

+0

しかし私の本当の内容は 'QWebEngineView'です。 – carobnodrvo

関連する問題