QT:用鼠标调整UI元素的大小

QT: resizing a UI element with the mouse

本文关键字:元素 UI 调整 鼠标 QT      更新时间:2023-10-16

是否有可能在我的程序中启用Qt设计器的内置调整大小功能?

我有一个带有实现的QtUI元素,我将其添加到QGraphicsView中。现在我想像在UI编辑器中一样调整它的大小。如何启用此功能?

您可以在小部件的布局中使用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时,用户可以使用大小夹点调整其大小。

另一种可能性是使用QSplitter。这是一种在布局中组织图形元素的方法,布局之间有一个可拖动区域。

分离器的使用在这里解释,也看看这个问题。