【发布时间】:2014-12-04 13:08:07
【问题描述】:
是否有可能在我的程序中启用 Qt 设计器的内置调整大小功能?
我有一个带有实现的 Qt UI 元素,我将它添加到 QGraphicsView。
现在我想像在我的 UI 编辑器中一样调整它的大小。
如何启用此功能?
【问题讨论】:
标签: c++ qt user-interface resize
是否有可能在我的程序中启用 Qt 设计器的内置调整大小功能?
我有一个带有实现的 Qt UI 元素,我将它添加到 QGraphicsView。
现在我想像在我的 UI 编辑器中一样调整它的大小。
如何启用此功能?
【问题讨论】:
标签: c++ qt user-interface resize
您可以在小部件内的布局中使用QSizeGrip。这是一个小技巧,但很容易实现:
myWidget->setWindowFlags(Qt::SubWindow);
QSizeGrip * sizeGrip = new QSizeGrip(myWidget);
QGridLayout * layout = new QGridLayout(myWidget);
layout->addWidget(sizeGrip, 0,0,1,1,Qt::AlignBottom | Qt::AlignRight);
QSizeGrip 类提供了调整顶级窗口大小的调整句柄。当您设置小部件标志Qt::SubWindow 时,用户可以使用大小夹调整它的大小。
【讨论】:
另一种可能性是使用QSplitters。它是一种在布局中组织图形元素的方法,其间有一个可拖动区域。
【讨论】: