QT无法使用自动调整大小的QLineEdit&布局

时间:2012-02-14 12:08:26

标签: c++ qt

我创建了一个扩展QLineEdit的自定义小部件。我希望这是'自动调整大小'。好的,我使用

connect(this,SIGNAL(textChanged(QString)), this, SLOT(resizeLineEditToContents()));

我有两个这样的小部件。我的想法是水平布局使用小部件1的大小调整,我放置了两个小部件以正确放置小部件2.

但这是不可能的,我已经玩了所有政策可能的价值,没有成功。

布局总是尝试调整QLineEdit窗口小部件的大小....(标准QLineEdit也会发生这种情况)。 有什么帮助吗? 谢谢

1 个答案:

答案 0 :(得分:0)

实际上,没有必要让信​​号和插槽的签名相同,并且Qt实际上要求在文档中不要放'const'和'&'因为'正常化'而在它上面。一个信号可以有0到N个参数,一个插槽可以将零信号给参数信号,这就是连接工作的原因。

但回到你的问题,你需要使用setFixedWidth,所以它会知道在你拉伸它之后不会调整回旧的宽度,然后将Layout设置为首选,所以它会尊重你的widget的提示。