0

私は単純なフォームを持っています:QDockWidgetの右側QGroupBox、左側にありQMainWindowます。QGroupBox垂直レイアウトを使用してレイアウトされます。

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>
4

1 に答える 1

-1

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

于 2012-02-25T19:22:10.970 に答える