【问题标题】:QT: resizing a UI element with the mouseQT:用鼠标调整 UI 元素的大小
【发布时间】:2014-12-04 13:08:07
【问题描述】:

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

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

【问题讨论】:

    标签: c++ qt user-interface resize


    【解决方案1】:

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

    【讨论】:

      【解决方案2】:

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

      拆分器的使用说明here,也可以看看这个question

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-07-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-10-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多