Qt4--FormLayout

转载 2015年07月10日 09:10:27

FormLayout显然对于Form非常适合。

QFormLayout *formLay=new QFormLayout;    

QLineEdit *name=new QLineEdit;    

QLineEdit *email=new QLineEdit;    

QLineEdit *address=new QLineEdit;
formLay->addRow(tr("&Name:"),name);    

formLay->addRow(tr("&Email:"),email);    

formLay->addRow(tr("&Address:"),address);

setLayout(formLay);

仅需要这些代码就可以显示如下:

formLay->setLabelAlignment(Qt::AlignRight);

formLay->setRowWrapPolicy(QFormLayout::WrapAllRows);(默认的是QFormLayout::DontWrapAllRows)之后变为

另外注意到tr("&Name:"),加这个'&'是什么意思呢,实际上在为一个Label setBuddy时必须加&,在FormLayout中自动把LineEdit设为Label的Buddy了。如果使用其他Layout需要用下面代码显示指定Buddy:

QLineEdit *nameEd  = new QLineEdit(this);
 QLabel    *nameLb  = new QLabel("&Name:", this);
 nameLb->setBuddy(nameEd);
 QLineEdit *phoneEd = new QLineEdit(this);
 QLabel    *phoneLb = new QLabel("&Phone:", this);
 phoneLb->setBuddy(phoneEd);
设置Buddy有神马用呢?当你按Alt+A时Address对应的LineEdit自动获得Focus。
另外只有Label才可以有Buddy
Layout之间可以相互嵌套,Vlayout->addLayout(hLayout);
但是注意FormLayout没有addLayout,只有addChildLayout,并且addChildLayout的访问权限还是protected。

C++ GUI Qt4学习笔记(二) 创建对话框

一.finddialog.h文件  /*  *首先,声明四个用到的类。这里所做的是前向声明,否则就会编译出错,因为编译器不知道这些类是否存在  *为了slots的定义,需要访问Dialog的组件,因此...

QT4和ogre结合代码(英文)

先贴出原文,随后翻译 Note: There is a recent QOgreWidget written by djbe that is tested on Mac and Linux: ...

]QT4 自定义槽和信号

]QT4 自定义槽和信号 楼层直达   vs9841 级别: 新手上路 ...

NSIS学习笔记(以Qt4程序打包为例)

一个Qt4程序安装(发布)后它应该有如下的结构(可参考 Qt 程序在 windows 下的发布 ): |-- sample.exe |-- QtCore4.dll |-- QtGui4.dll |-...
  • eydwyz
  • eydwyz
  • 2017年08月04日 16:03
  • 133

通过静态编译(VS2010)解决发布qt4 release 版本时无图片问题

用QT的默认安装,把生成的release下的exe文件,和下面几个核心文件放在一个文件夹里: QTGUI4.DLL QTCORE4.DLL 文件在X:\Qt\4.7.1\bin目录中,切...

Qt4中的QButtonGroup类使用

用惯了qt3的朋友在使用qt4的时候肯定会有些不适应,包括构建界面,一些类的使用上,都有一些区别,总得来说Qt4在编程方式上设计的更加合理了,因为它把界面代码和操作代码完全的“隔离”开了,这样就避免了...

Linux Qt4安装全过程

1. 下载软件     到ftp://ftp.qt-project.org/qt/source/ 下载Linux版本的Qt库 qt-everywhere-opensource-src-4.7.2.t...

学习笔记之Qt4内建对话框

为了方便程序员进行某些特定功能对话框的编程,Qt提供了一套标准的通用对话框。这些内建的对话框都提供了一些便于使用的静态函数。在windows系统上,这些静态函数将会调用本地的windows对话框;而在...

qmake使用实践:包含动态库的Qt4工程

本文是qmake的一个使用练习,是半年前所学的 分析与学习Qt Solution对qmake的使用 的续篇。 采用一个非常简单的Qt程序作为例子,通过pro文件的合理编写,使得我们的程序在使用动态库...

Qt4设计自定义钟表控件(插件法)

1. 新建工程选择Qt4设计师自定义控件 2.工程名设置成ClockFace 3.填写类的名字,对应图标,所属组 4.在clockface.h和clock...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Qt4--FormLayout
举报原因:
原因补充:

(最多只允许输入30个字)