Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/qt/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Qt 无法获取小部件以保持其纵横比_Qt_Qwidget_Qt Designer_Aspect Ratio - Fatal编程技术网

Qt 无法获取小部件以保持其纵横比

Qt 无法获取小部件以保持其纵横比,qt,qwidget,qt-designer,aspect-ratio,Qt,Qwidget,Qt Designer,Aspect Ratio,我正在用Qtcreator(也使用qt设计器)制作一个程序。 我制作了一些QSvgWidget按钮(我想要的是一个可伸缩的基于图像的按钮)。它们可以工作,但不能保持图像的纵横比(纵横比需要为1:1)。 即使经过几个小时的尝试,我自己也没能想出解决这个问题的办法 我试过: QSizePolicy qsp(QSizePolicy::Preferred,QSizePolicy::Preferred); qsp.setHeightForWidth(true); ui->Widgetname->

我正在用Qtcreator(也使用qt设计器)制作一个程序。 我制作了一些QSvgWidget按钮(我想要的是一个可伸缩的基于图像的按钮)。它们可以工作,但不能保持图像的纵横比(纵横比需要为1:1)。 即使经过几个小时的尝试,我自己也没能想出解决这个问题的办法

我试过:

QSizePolicy qsp(QSizePolicy::Preferred,QSizePolicy::Preferred);
qsp.setHeightForWidth(true);
ui->Widgetname->setSizePolicy(qsp);
但这不起作用

问题的一些图像:


正确:

不正确:


我不熟悉Qt和编码


我做错了什么?

我似乎在其他帖子中忽略了这一链接(大多数回复建议设置HeightForWidth):我仍然不确定为什么设置HeightForWidth不起作用。但这已经足够有效了。