2012-02-25 35 views
0

私は単純な形式:QDockWidgetの右側に、QGroupBoxQMainWindowの左側にあります。 QGroupBoxは、縦型レイアウトを使用してレイアウトされています。ウィンドウのサイズを変更したときにQDockWidgetを展開する方法は?

メインウィンドウを拡大または最大化すると、QDockWidgetが展開され、すべての空き領域を占有します。

どうすればよいですか?

ベローは私の.uiファイルのソースコードです。

<?xml version="1.0" encoding="UTF-8"?> 
<ui version="4.0"> 
<class>MainWindow</class> 
<widget class="QMainWindow" name="MainWindow"> 
    <property name="geometry"> 
    <rect> 
    <x>0</x> 
    <y>0</y> 
    <width>653</width> 
    <height>381</height> 
    </rect> 
    </property> 
    <property name="windowTitle"> 
    <string>MainWindow</string> 
    </property> 
    <widget class="QWidget" name="centralwidget"> 
    <layout class="QVBoxLayout" name="verticalLayout"> 
    <item> 
    <widget class="QGroupBox" name="groupBox"> 
     <property name="title"> 
     <string>GroupBox</string> 
     </property> 
    </widget> 
    </item> 
    </layout> 
    </widget> 
    <widget class="QDockWidget" name="dockWidget"> 
    <attribute name="dockWidgetArea"> 
    <number>2</number> 
    </attribute> 
    <widget class="QWidget" name="dockWidgetContents"/> 
    </widget> 
</widget> 
<resources/> 
<connections/> 
</ui> 

答えて

-1

あなたはQEvent::WindowStateChangeに反応する(リサイズまたはresizeEventQWidget::changeEventを再実装する必要があります。これらのイベントのいずれかが発生した場合は、QWidget::windowStateを取得し、ドックのサイズを任意に変更してください。

+0

ありがとうございますが、ドックウィジェットのサイズを変更するにはどうすればよいですか? 'resize(int、int)'は役に立ちません。 dockWidgetContentsのサイズ変更も役立ちません。 – Dmitriy

関連する問題