限制小部件的大小

时间:2019-01-08 10:12:49

标签: qt qgraphicsview qgraphicsscene qevent qgraphicspixmapitem

我有带有一些导航控件的图像查看器。

enter image description here

因此,在QGraphicsView中有一个QGraphicsScene,我在其中通过pixmap设置图像。 基于像素图的宽度和高度,我限制了QGraphicsView的最小大小以及整个小部件。

现在增加主窗口小部件的大小,如果宽高比与图像的长宽比匹配并且图像将缩放,则应该允许调整大小。 假设我的图片是640:480,所以比率是1.3333。现在,当我尝试调整ImageViewer的大小时,QGraphicsViewer的新大小应为1.333,否则ImageViewer不应调整大小。

因此,我已经重写了ImageViewer的resizeEvent(QResizeEvent * event),但是我不能仅在有效条件下限制调整大小。

每当我拖动角落时都会调用此resizeEvent(QResizeEvent * event)。

覆盖ImageViewer的resizeEvent。

double ratio = "1.3";
double windowRatio = (double) width() / height();
if(ratio == s)
{
   QMdiSubWindow::resizeEvent(event);
}
else
{
   resize(event->oldSize());
}

任何建议都值得赞赏!

此致

Sayan

0 个答案:

没有答案