等到QLineEdit文本发生变化

时间:2013-02-21 12:59:36

标签: c++ qt

我想使用QLineEdit来获取我想要使用的整数值。我的问题是我要等到输入文本。如果我可以在开头提供一个默认文本,在点击QEditLine后会自动删除,这样会很好,例如:   enter image description here

第一点我尝试了这个并且它不起作用:

 ......
int num =0;
QLineEdit *qtest = new QLineEdit();
........
mailayout->addWiget(qtest);// when I use the while loop the QLineEdit won't be added !! 
while(num ==0 ){
   num = qtest->text.toInt();
 }
.............

程序保持在while循环中,任何想法我做错了吗?

1 个答案:

答案 0 :(得分:6)

使用setPlaceholderTest(const QString&)显示用户未输入任何内容的文字。

不要轮询QLineEdit进行更改,这是Qt所以请使用信号。

connect( qtest, SIGNAL( editingFinished() ),
         someContainerObj, SLOT( myLineEditSlot() ) );
...
ContainerObj::myLineEditSlot()
{
    int num = qtest->text().toInt();
    ...
}