三、Qt入门基础知识
2014-01-15 14:01
190 查看
1、Qt是什么?
Qt是一个多平台的C++图形用户界面应用程序框架。Qt是完全面向对象的很容易扩展,并且允许真正的组件编程。如果你用过java的话,会发现二者很相似,或者说,UI编程比java还简单。
2、Qt版本?
Qt企业版和Qt专业版 提供给商业软件开发。 企业版比专业版多一些扩展模块,比如:OpenGL
三维图形模块和SQL模块
Qt自由版是Qt仅仅为了开发自由和开放源码软件 提供的Unix/X11版本。在Q公共许可证和GNU通用公共许可证 下,它是免费的。
Qt/嵌入式自由版是Qt为了开发自由软件提供的嵌入式版本。 在GNU通用公共许可证下,它是免费的。
3、信号和槽
用于对象间的通讯。信号/槽机制是Qt与 其它工具包的最不相同的部分。
当一个信号被发射,它所连接的槽会被立即执行,就像一个普通函数调用一样。如果几个槽被连接到一个信号,当信号被发射时,这些槽就会被按任意顺序一个
接一个地执行。
比如:
这样就定义了一个信号对应多个槽,记住,调用顺序是任意的。
另外,可以定义多个信号对应一个槽,也可以定义多个信号对应多个信号,这样子的话,就是一个信号被触发,其它信号也被触发。
4、Qt工具
Qt设计器——可视化地设计视窗
Qt语言学家,lupdate和lrelease——翻译应用程序使之能够进入国际市场,我想起Eclipse+ADT也有类似的,具体是把所有字符(string)放在一起形成一个模块,以后就可以直接翻译成其他语言。
Qt助手——快速地发现你所需要的帮助
qmake——由简单的与平台无关的项目文件生成Makefile
qembed——转换数据,比如把图片转还为C++代码。。这个也许吧,软件工程这门课会告诉你怎么用RationalRose画图(UML,时序图,活动图,然后转成代码)
qvfb——在桌面上运行和测试嵌入式应用程序
makeqpf——为嵌入式设备提供预先做好的字体
moc——元对象编译器
uic——用户界面编译器
qtconfig——一个基于Unix的Qt配置工具
如果你想了解更多又不想看E文的东西,给你一个链接:http://www.kuqin.com/qtdocument/index.html
5、关于对话框和主窗体
作为程序的主窗体,推荐使用QMainWindow,作为对话框才使用QDialog。
MainWindow使用show(),模态对话框使用exec(),非模态对话框用show() 。一般来时,程序主窗体都是QMainWindow, 弹出的对话框的构造函数都是用主窗体作为parent.
如果界面即可能在做独立窗体使用,又可能嵌入到其它界面中,就用QWidget
6、学习
我觉得了解了基础之后,更重要的还是编程,所以根据实例去学API才是王道。
Qt是一个多平台的C++图形用户界面应用程序框架。Qt是完全面向对象的很容易扩展,并且允许真正的组件编程。如果你用过java的话,会发现二者很相似,或者说,UI编程比java还简单。
2、Qt版本?
Qt企业版和Qt专业版 提供给商业软件开发。 企业版比专业版多一些扩展模块,比如:OpenGL
三维图形模块和SQL模块
Qt自由版是Qt仅仅为了开发自由和开放源码软件 提供的Unix/X11版本。在Q公共许可证和GNU通用公共许可证 下,它是免费的。
Qt/嵌入式自由版是Qt为了开发自由软件提供的嵌入式版本。 在GNU通用公共许可证下,它是免费的。
3、信号和槽
用于对象间的通讯。信号/槽机制是Qt与 其它工具包的最不相同的部分。
当一个信号被发射,它所连接的槽会被立即执行,就像一个普通函数调用一样。如果几个槽被连接到一个信号,当信号被发射时,这些槽就会被按任意顺序一个
接一个地执行。
比如:
connect(slider, SIGNAL(valueChanged(int)),spinBox, SLOT(setValue(int))); connect(slider, SIGNAL(valueChanged(int)),this, SLOT(updateStatusBarIndicator(int)));
这样就定义了一个信号对应多个槽,记住,调用顺序是任意的。
另外,可以定义多个信号对应一个槽,也可以定义多个信号对应多个信号,这样子的话,就是一个信号被触发,其它信号也被触发。
4、Qt工具
Qt设计器——可视化地设计视窗
Qt语言学家,lupdate和lrelease——翻译应用程序使之能够进入国际市场,我想起Eclipse+ADT也有类似的,具体是把所有字符(string)放在一起形成一个模块,以后就可以直接翻译成其他语言。
Qt助手——快速地发现你所需要的帮助
qmake——由简单的与平台无关的项目文件生成Makefile
qembed——转换数据,比如把图片转还为C++代码。。这个也许吧,软件工程这门课会告诉你怎么用RationalRose画图(UML,时序图,活动图,然后转成代码)
qvfb——在桌面上运行和测试嵌入式应用程序
makeqpf——为嵌入式设备提供预先做好的字体
moc——元对象编译器
uic——用户界面编译器
qtconfig——一个基于Unix的Qt配置工具
如果你想了解更多又不想看E文的东西,给你一个链接:http://www.kuqin.com/qtdocument/index.html
5、关于对话框和主窗体
作为程序的主窗体,推荐使用QMainWindow,作为对话框才使用QDialog。
MainWindow使用show(),模态对话框使用exec(),非模态对话框用show() 。一般来时,程序主窗体都是QMainWindow, 弹出的对话框的构造函数都是用主窗体作为parent.
searchDialog::searchDialog(QWidget *parent) : QDialog(parent)
void MyApp::search() { //模态对话框 //searchDialog search; //search.exec(); // 非模态对话框 searchDialog *search = new searchDialog(this); search->show(); }
如果界面即可能在做独立窗体使用,又可能嵌入到其它界面中,就用QWidget
6、学习
我觉得了解了基础之后,更重要的还是编程,所以根据实例去学API才是王道。
相关文章推荐
- QT入门基础知识
- Struts2入门1 Struts2基础知识
- 【Linux 基础】入门知识
- JS的基础入门知识.
- TensorFlow入门基础知识(七)tf.control_dependencies的用法
- QT的基础知识总结
- jQuery学习笔记 - 基础知识扫盲入门篇
- USB入门系列之一----基础知识
- 股票入门基础知识19:使用贴现现金流(DCF)计算公司估值
- Qt的一些基础知识
- javascript快速入门第二章基础知识(下)
- C++入门基础知识:类和引用
- XML 新手入门基础知识
- MATLAB入门教程(基础知识点)
- Web前端工程师知识体系大全,Web前端入门基础体系
- [java相关]Java基础知识——JNI入门介绍(上)
- 内存泄露从入门到精通三部曲之基础知识篇
- undo系列学习之undo入门基础知识介绍
- c语言基础知识入门
- ios开发 UI基础入门知识