12个QT基本对话框,以及淡入原理(用定时器把窗口逐渐变成透明)
一、基本对话框
1,核心库:
界面程序 QApplication
非程序界面QCoreAppliction
2,消息循环必须执行QApplication.exec();
3,消息绑定机制: 信号-槽
信号可以对应信号,也可以对应槽。
一个信号可以对应多个信号和多个槽。
4,QT基本对话框:
QErrorMessage,
QInputDialog,
QMessageBox,
QPrintDialog,
QProgressDialog,
QFileDialog,
QAbstractPrintDialog,
QColorDialog
QFontDialog,
QPageSetupDialog,
QPrintPreviewDialog,
QWizard
5,窗体位置信息:
The QWidget class is the base class of all user interface objects。
通过QWidget的一系列函数获得:
x(),y() 窗口左上角坐标
frameGeometry(), 窗口矩形
pos(), 窗口左上角坐标
geometry(), 窗口矩形(不含边框和标题栏)
width(),height(), 窗口宽高(不含边框和标题栏)
rect(), 窗口矩形,(0,0,xxx,xxx)(不含边框和标题栏)
size() 窗口大小(不含边框和标题栏)
6,QToolButton用法:
QToolButton *btn;
btn = new QToolButton;
btn->setText(tr("文字"));
btn->setIcon( QPixmap(":/images/bb.png") );
btn->setIconSize( QPixmap(":/images/bb.png").size() );
btn->setAutoRaise(TRUE);
btn->setToolButtonStyle( Qt::ToolButtonTextUnderIcon );
7,抽屉窗体:QToolBox
8,表格窗体:QTableWidget
9,动态加载UI
QUiLoader loader;
QFile file(":/forms/dialog.ui");
file.open(QFile::ReadOnly);
QWidget *dialog = loader.load(&file);
file.close();
third->show();
第二章 布局管理
1,基本布局类
|---QBoxLayout----------|---QHBoxLayout
|--- |---QVBoxLayout
|---QGridLayout
addWidget(); //插入控件
addLayout(); //插入布局
setFrameStyle();
addStretch(); //插入占位符
2,多文档 QWorksSpace
3,分割窗体 QSplitter
4,停靠窗体 QDockWidget
5,堆栈窗体 QStackedWidget
第三章 对话窗进阶
1,可扩展对话框,很简单。
2,调色板QPalette
setColor()
setBrush()
3,窗口淡入淡出
淡入原理:窗口出现的同时,新建一个跟窗口等大小的空白窗体,用定时器由完全不透明逐渐变为完全透明。
http://blog.chinaunix.net/uid-25749806-id-2911321.html