浅谈Qt Widget应用学习笔记

移动开发
Qt Widget应用学习笔记是本文要介绍的内容,主要是来了解并学习Qt Widget的应用,具体内容的实现来看本文详解。

Qt Widget应用学习笔记是本文要介绍的内容,主要是来了解并学习Qt Widget的应用,具体内容的实现来看本文详解。应用程序的主窗口是通过创建QMainWindow的派生类来完成的。QMainWindow和QDialog一样,都是派生自QWidget。

closeEvent()是由QWidget提供的一个虚函数,在用户关闭窗口时会被自动调用。、

setCentralWidget()将某个Widget设置为主窗口的central widget, 而central widget意味着在显示时会占据主窗口的中央位置。

Qt下的GUI 编程支持多种图形格式。存在多种方式为应用程序提供图像,最常见的包括:

(1)将图像存储在文件中,运行时加载之。

(2)在源码中include XPM文件(XPM文件也是合法的C++文件)。

(3)利用Qt的资源机制。

Qt的资源机制比之运行时加载更方便,并对任何支持的图像格式都能良好工作。

Qt Widget为了利用Qt的资源机制,需要创建一个资源文件,并在.pro文件中对应添加一行来对资源文件进行标识。

例如 

  1. RESOURCES= spreadsheet.qrc 

资源文件本身则采用了简单的XML格式。它被编译进程序的可执行文件,因此不会被丢失。在对资源进行定位时,使用路径前缀":/",例如“ :/images/icon.png "。而资源本身可以是任何类型的文件。

  1. modeless window——one that runs independently of any other windows in th application 

Qt Widget对于modeless dialog ,当其被弹出时,可能处于三种情况:

(1)这是该对话框第一次被激活

(2)该对话框之前曾被激活,但用户又将其关闭

(3)该对话框之前曾被激活,而且仍可见

show() 将一个hidden window 变为visible,而activateWIndow()则将window的状态变为active

  1. model window——pops up when invoked and blocks the application,preventing any other processing or interactions until it is closed. 

一个dialog若是用show()来激活,则是modeless dialog;若通过exec()来激活,则是model dialog。此外,还可以调用setModel()来设置dialog的显式模式。

QDialog::exec() 在dialog被确认时返回值为true,否则为false。

Qt Widget在栈上创建 model dialog是一种良好的编程惯例,因为在使用完后就不再需要,而model dialog会在作用域结束后自动被销毁。

由于多数应用程序的About box 都是高度雷同的,Qt中提供了一个方便的方案(static convenicence function):

QMessage::about(),该函数于QMessageBox::warning()很相似。

小结:浅谈Qt Widget应用学习笔记的内容介绍完了,希望通过Qt Widget应用内容的学习能对你有所帮助!

责任编辑:zhaolei 来源: 互联网
相关推荐

2011-09-09 11:05:56

Widget

2011-09-07 16:28:46

QT WidgetQWidget

2011-09-09 17:59:26

QT Widget

2011-09-08 17:48:33

Web Widget

2011-09-07 16:57:31

QT WidgetQWidget

2011-09-09 17:24:39

Qt Webkit模块

2011-08-30 13:33:29

Qt数据库

2011-09-07 11:15:25

2011-09-07 17:19:16

Web widget

2011-09-07 10:34:48

Android Wid

2021-02-05 11:55:37

PythonWindows平台代码

2011-09-08 15:40:45

Android Wid组件

2011-06-30 11:23:29

Qt 线程

2011-09-07 16:43:38

Qt Widget

2011-09-07 16:24:10

Qt Widget

2011-06-28 14:02:34

QT ARM

2011-09-08 16:07:13

Widget配置文件

2011-07-04 15:43:03

Qt 布局管理器 designer

2011-07-04 16:20:54

QT 窗口 QWidget

2011-09-08 11:18:53

Widget
点赞
收藏

51CTO技术栈公众号