当前位置: 代码迷 >> QT开发 >> Qt 怎样让ui子窗口随程序中主窗口的大小一起变化?解决办法
  详细解决方案

Qt 怎样让ui子窗口随程序中主窗口的大小一起变化?解决办法

热度:65   发布时间:2016-04-25 05:02:11.0
Qt 怎样让ui子窗口随程序中主窗口的大小一起变化?急!!!
在主窗口中设置一个horizontalLayout,把多个按钮控件放在这个horizontalLayout中,
然后写了个resizeEvent(QResizeEvent *event),在这个函数里添加了
ui->horizontalLayout->setGeometry(QRect(20,this->height()-100,this->width()-20,80));
可是这样horizontalLayout和里面的按钮控件还是不随着主窗口的大小而变化。
我想实现的功能是,当LCD屏的分辨率改变时,主窗口放大,主窗口中的horizontalLayout也会随主窗口间距变大。
有哪位知道这方面的,帮我下,不身感激啊!!!

------解决方案--------------------
我刚才已经说过了,主窗口还需要一个布局,由它来决定你的horizontalLayout的大小。

我不知道你是在代码中写的,还是在界面设计器里做的,索性给你提出一个UI文件来,你拷贝过去看看就知道了。

XML code
<?xml version="1.0" encoding="UTF-8"?><ui version="4.0"> <class>CMainForm</class> <widget class="QWidget" name="CMainForm">  <property name="geometry">   <rect>    <x>0</x>    <y>0</y>    <width>400</width>    <height>300</height>   </rect>  </property>  <property name="windowTitle">   <string>CMainForm</string>  </property>  <layout class="QVBoxLayout" name="verticalLayout">   <item>    <layout class="QHBoxLayout" name="horizontalLayout">     <item>      <widget class="QPushButton" name="pushButton_2">       <property name="text">        <string>PushButton</string>       </property>      </widget>     </item>     <item>      <widget class="QPushButton" name="pushButton">       <property name="text">        <string>PushButton</string>       </property>      </widget>     </item>    </layout>   </item>  </layout> </widget> <layoutdefault spacing="6" margin="11"/> <resources/> <connections/></ui>
------解决方案--------------------
外面再套一层布局不行么?
  相关解决方案