标签:
QWidget w
QLineEdit edit;
edit.show(); //如果没有这句,编辑框edit将会显示在父窗口的左上角
edit.setParent(&w); //以w为父窗口并显示在上面
w.show();
Qconnect(&button,SIGNAL(clicked()),&w,SLOT(close())); // 点击button按钮,关闭w窗口。w是对象,&w是窗口
QLineEdit的专属用法
QLineEdit edit;
edit.setText("显示文字"); //显示文字在编辑框上面
edit.setEchoMode(QLineEdit::password); //输入的密码自动变成圆形图案
edit.setEchoMode(QLineEdit::passwordEchoOnEdit); //输入的密码在失焦后变成圆形图案
账号匹配模式(输入一个数字,显示整个账号)
QCompleter completer(StringList()<<"598265430"<<"1710514175");
completer.setFilterMode(Qt::MatchContains); // 只要是包含的内容都可以匹配
edit.setcompleter(&completer); //在编辑框edit上面匹配completer上面的所有字符串,只能以首字符为基准
设置控件位置
edit.setGeometry(30,30,100,30); // x,y,长,高 不是很好
QHBoxLayout layout; //QH 为横向 QV为纵向
layout.addStretch(1); //加弹簧固定位置
layout.addWidget(&button);
layout.addspacing(50); //中间隔开50个像素
layout.addWidget(&edit);
layout.addStretch(1); //加弹簧固定位置
w.setLayout(&layout);
layout可以自己帮你弄好父子关系,可以省略以上的setparent.
QGridlayout 类 (格子类)
QGridlayout layout;
layout.setColumnStretch(3,1); //列的弹簧
layout.setRowStretch(3,1); // 行的弹簧
layout.setColumnStretch(0,1);
layout.setRowumnStretch(0,1);
layout.addwidget(&button,1,1);
layout.addwidget(&edit,1,2);
layout.addwidget(new Qpushbutton("a"),2,1);
layout.addwidget(new Qpushbutton("b"),2,2);
layout.addwidget(new Qpushbutton("合并"),3,1,1,2); //后面两个参数为合并1行2列
标签:
原文地址:http://www.cnblogs.com/Ten10/p/4858551.html