我有带有一些导航控件的图像查看器。
因此,在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