Qt C++ 可调整大小矩形的最小尺寸

Posted

技术标签:

【中文标题】Qt C++ 可调整大小矩形的最小尺寸【英文标题】:Qt C++ Minimum size of resizable rectangle 【发布时间】:2013-04-03 21:29:44 【问题描述】:

在我的应用程序中,我有一个可以调整大小的矩形(手动实现鼠标事件来调整大小)。我的问题是我可以调整任何大小的矩形。如何实现禁止在 100x100 像素以下调整大小的功能。换句话说,我想要设置矩形最小尺寸的函数,这样用户就不能在 100x100 像素以下调整该矩形的大小。如果需要,我将提供我的部分代码,但现在我需要想法或伪代码。

【问题讨论】:

请阅读有关 sizeHint 的文档 这是一篇不错的文章***.com/questions/4553304/… 谢谢,但是矩形没有 sizeHint,我用鼠标调整矩形的大小,它的大小不受其他组件或主窗口大小的影响 resizeEvent 怎么样? 在鼠标事件中添加大小约束,您正在计算矩形大小。 【参考方案1】:

如果您已经编写了调整矩形大小的代码,您只需添加如下内容:

QRect r = oldRect();
switch (border)

    case Left:
        r.setLeft(newLeftPos());
        if (r.width() < minimumWidth())
            r.setLeft(r.right() - minimumWidth());
    break;

    ...


draw(r);

【讨论】:

左边的情况是什么。当我移动矩形的左侧时会出现这种情况吗? 没错。应该为矩形的所有其他边(和角,如果您愿意)编写相同的代码。 谢谢,你的想法非常适合我的应用

以上是关于Qt C++ 可调整大小矩形的最小尺寸的主要内容,如果未能解决你的问题,请参考以下文章

如何使Qt小部件可调整大小[重复]

可调整大小的画布(JQuery UI)

PyQt 中的半可调整大小的小部件

如何在 Pyqt 中创建可调整大小的布局 UI?

为可调整大小的 UIView 设置最小和最大宽度和高度

如何使用 jQuery UI 获取可拖动和可调整大小元素的坐标