Qt 提供了几种组件定位的技术,其中包括 绝对定位 和 布局定位。
顾名思义,绝对定位就是使用最原始的定位方法,给出这个组件的坐标和长宽值。这样,Qt 就知道该把组件放在哪里,以及怎么设置组件的大小了。但是这样做的一个问题是,如果用户改变了窗口大小,比如点击了最大化或者拖动窗口边缘,这时,你就要自己编写相应的函数来响应这些变化,以避免那些组件还只是静静地呆在一个角落。或者,更简单的方法是直接禁止用户改变大小。
不过,Qt 提供了另外的一种机制,就是布局,来解决这个问题。你只要把组件放入某一种布局之中,当需要调整大小或者位置的时候,Qt 就知道该怎样进行调整。这类似于 Swing 的布局管理器,不过 Qt 的布局没有那么多,只有有限的几个。
#include <QtGui>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget *window = new QWidget;//
window->se

本文介绍了Qt中的组件布局,包括绝对定位和布局定位的概念。重点讲解了使用QSpinBox和QSlider时如何进行布局,并解释了在两者之间建立信号槽连接时如何避免无限递归的问题。同时,列举了Qt的五种主要布局类型:QHBoxLayout、QVBoxLayout、QGridLayout、QFormLayout和QStackedLayout,以及它们的特点和应用场景。
最低0.47元/天 解锁文章
633

被折叠的 条评论
为什么被折叠?



