设置QLabel的宽度我这样做不能在运行时
ui.label->geometry().setWidth(12);
但是我得到的错误是
Error 1 error C2662: 'QRect::setWidth' : cannot convert 'this' pointer from 'const QRect' to 'QRect &'
关于如何解决这个有什么建议?
设置QLabel的宽度我这样做不能在运行时
ui.label->geometry().setWidth(12);
但是我得到的错误是
Error 1 error C2662: 'QRect::setWidth' : cannot convert 'this' pointer from 'const QRect' to 'QRect &'
关于如何解决这个有什么建议?
几何返回一个const查阅QRect参考,所以你需要使用它是这样的:
QRect r = ui.label->geometry();
r.setWidth(12);
ui.label->setGeometry(r);
或者您可以使用调整大小:
ui.label->resize(12, ui.label->height());
但是你也可以告诉我们你想完成什么,也许我们可以找到一个解决方案,把QLabel放到一个布局中,你不需要手动调整它的大小。
geometry()
返回您对QRect的const引用,因此它只能用作只读信息。
不是很漂亮的方法,但你可以尝试调用setMinimumWidth()
,setMaximumWidth()
函数具有与参数相同的期望值。
其实调整的标签,尽管它的内容是非常可疑的操作)