三、Qt入门基础知识

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与 其它工具包的最不相同的部分。

当一个信号被发射,它所连接的槽会被立即执行,就像一个普通函数调用一样。如果几个槽被连接到一个信号,当信号被发射时,这些槽就会被按任意顺序一个 接一个地执行。

比如:

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才是王道。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值