12个QT基本对话框,以及淡入原理(用定时器把窗口逐渐变成透明)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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

以上是关于12个QT基本对话框,以及淡入原理(用定时器把窗口逐渐变成透明)的主要内容,如果未能解决你的问题,请参考以下文章

Qt炫酷动画demo02-仿苹果对话框淡入淡出的动画

Qt炫酷动画demo02-仿苹果对话框淡入淡出的动画

Qt炫酷动画demo02-仿苹果对话框淡入淡出的动画

如何把QQ窗口弄成淡出淡入效果啊?

qt5.12用winapi创建对话框

Qt:如何关闭用 exec() 打开的对话框窗口?