按钮组
#include "widget.h"
#include <qapplication.h>
#include <qpushbutton.h>
#include <qfont.h>
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
setMinimumSize(200,120);
setMaximumSize(200,120);
QPushButton *quit = new QPushButton("Quit",this);
quit->setGeometry(62,20,75,30);
quit->setFont(QFont("Times",18,QFont::Bold));
connect(quit,SIGNAL(clicked()),qApp,SLOT(quit()));
}
Widget::~Widget()
{
}
输入控件组
显示控件组
QTextBrowser还提供了几种比较有用的槽(SLOTS)
virtual void backward()
virtual void forward()
virtual void home()
通过链接这几个槽来达到人们说的“翻页”效果
空间间隔组
布局管理组
容器组
Widget对应QWidget类,Widget是使用Qt编写的图形用户界面(GUI)应用程序的基本生成块,每一个GUI组件,如按钮,标签或文本编辑器,都是一个Widget,并且可以放置在现有的用户界面中作为单独的窗口显示。每种类型的组件都是有QWidget的特殊子类提供的,而QWidget自身又是QObject的子类。
QWidget是所有Qt GUI界面类的基类,他接收鼠标、键盘及其他窗口事件,并在显示器上绘制自己。
通过传入QWidget构造函数的参数(QWidget::setWindowFlags()和QWidget::setParent())可以指定一个窗口部件的窗口标识和父窗口。
窗口部件的窗口标识(window flags)定义了窗口部件的窗口类型和窗口提示(hint)
窗口部件的构造函数:
QWidget(QWidget *parent= 0,Qt::WindowFlags f = 0)
parent:指定了窗口部件的父窗口部件,默认为0,新建的窗口部件将是一个窗口
f:指定了新窗口部件的窗口标识
QWidget定义的窗口类型为Qt::WindowFlags枚举类型
QWidget *window = new QWidget();
window->resize(320,240);
window->show();
QPushButton *button = new QPushButton(tr("Press me"),window);
button->move(100,100);
button->show();子Widget是通过使用布局对象在窗口中进行 排列的,不指定位置和大小
QWidget *window = new QWidget();
window->resize(320,240);
window->show();
/* QPushButton *button = new QPushButton(tr("Press me"),window);
button->move(100,100);
button->show();*/
QLabel *label = new QLabel(tr("Name:"));
QLineEdit *lineEdit = new QLineEdit();
QHBoxLayout *layout = new QHBoxLayout();
layout->addWidget(label);
layout->addWidget(lineEdit);
window->setLayout(layout);复杂一点的界面
QLabel *queryLabel = new QLabel(tr("Query:"));
QLineEdit *queryEdit = new QLineEdit();
QTableView *resultView = new QTableView();
QHBoxLayout *querylayout = new QHBoxLayout();
querylayout->addWidget(queryLabel);
querylayout->addWidget(queryEdit);
QVBoxLayout *mainLayout = new QVBoxLayout();
mainLayout->addLayout(querylayout);
mainLayout->addWidget(resultView);
window->setLayout(mainLayout);
项目视图组
模型/视图框架用于完成数据与表现的分离--InterView框架--MVC设计模式
MVC:模型表示数据,视图是用户界面,控制定义了用户在界面上的操作
MVC模式有效的分离了用户和数据
模型:基于QAbstractItemModel类,该类是抽象基类
视图:所有视图都是从抽象基类QAbstractItemView继承
项目控件组(创建具有复选框的树形控件)
--QTreeWidget(树形控件)
--QTreeWidgetItem(树形节点)