在使用Qt时,现在一般都是在“设计”中拖动控件,一般常用的有pushbutton,label,lineEdit,textEdit,combox等。
pushbutton就很少的去设置什么属性,一般直接转到槽,编写槽函数也就是当做一个跳板执行函数体内操作。
label一般在拖控件的时候就把需要显示的字打上去了,而且运行程序后界面中的label默认的不能修改。
lineEdit与textEdit区别就在于lineEdit是单行的,TextEdit是多行文本框,他们支持的功能有很多。
LineEdit和TextEdit里面内容都是字符串类型的,QString类,这也就意味着如果要读里面数字内容需要进行转换,举个例子:
QString s1;
s1 = ui->lineEdit->text();//说明text()函数能读出框内内容;
int test;
test = s1.toInt();//这只能转换一些数字,如果其他的像中文应该不行
下面列举一些lineEdit函数,(也有可能是关键字)
ui->lineEdit->setMaxLength(2);//设置当前的这个lineEdit输入长度为2,超过两个字符输入不了
QString s1;
ui->lineEdit->insert(s1);//insert插入字符串到当前控件中
textEdit和LineEdit差不多
QString s1;
ui->textEdit->setPlainText(s1);//可以用这个函数插入字符串,
//需要注意的是如果需要在末尾继续插入文本的话不能使用这个函数,
//它每次插入会把当前文本框中清空或者是默认从开头插入
ui->textEdit->append(s1);//这个函数同样可以插入,只不过可以从上次的位置接着往后
ui->textEdit->insertPlainEdit(s1);//看这个名字应该就知道这就是一个专门插入字符串的函数
上面插入函数区别在于append可以保持当前格式插入,说明文档翻译如下:
append:将带有文本的新段落附加到文本编辑的末尾。注意:附加的新段落将具有与当前段落相同的字符格式和块格式,由光标的位置决定。
setPlainText:将文本编辑的文本更改为字符串文本。删除以前的任何文本。文本被解释为纯文本。注意,这个函数会清undo/redo历史记录。
insertPlainEdit:在当前光标位置插入文本的方便插槽。
至于combox:
ui->combox->currentIndex();//获取当前下拉菜单位于第几项默认是从0往后面累加的
ui->combox->currentText();//获取当前下拉菜单的内容,也就是上面显示的是什么,默认返回一个字符串