2012年(46)
分类: C/C++
2012-04-29 13:35:57
摘自:http://www.cnblogs.com/rophie/archive/2012/04/02/helloworld.html
下面我们来试试我们的 Hello, world! 吧!
打开Qt Creator,点击创建项目,选择 Qt 控件项目->Qt Gui 应用
设置工程名和路径,注意路径不能含有中文。
勾掉 使用影子构建,目的是为了防止新手出错。
此处我们将创建界面选项勾掉,否则IDE会自动为我们创建界面文件,后面会介绍,开始我们先手写界面。
直接完成。
之后可以看到,IDE自动生成了四个文件,一个.pro文件,两个.cpp和一个.h。这里说明一下,.pro就是工程文件(project),它是qmake自动生成的用于生产makefile的配置文件。这里我们先不去管它。main.cpp里面就是一个main函数,其他两个文件就是先前我们曾经指定的文件名的文件。
下面我们把main.cpp文件修改一下:
1 #include
2 #include
3
4 int main(int argc, char *argv[])
5 {
6 QApplication a(argc, argv);
7 QLabel *label=new QLabel("Hello World");
8 label->show();
9 return a.exec();
10 }
点击左边绿色的三角形运行程序
就这么简单,我们的第一个Qt程序已经完成了!
下面来逐行解释一下Hello, world!程序
第1行和第2行包含了类QApplication和QLabel的定义,Qt中头文件和类名是一致的。也就是说,如果你要使用某个类的话,它的类名就是它的头文件名。
其中QtGui是图形用户界面类,表示Qt的Gui模块,从目录结构上来讲,QtGui是文件夹。QApplication类是每个Qt Gui应用程序必需的。
第4行是main函数函数头。这与普通的C++程序没有什么两样,学过C++的都明白。
第6行,创建一个QApplication对象。这个对象用于管理应用程序级别的资源。QApplication的构造函数要求两个参数,分别来自main的那两个参数,因此,Qt在一定程度上是支持命令行参数的。
1 | QLabel *label=new QLabel("Hello World"); |
这一行,创建一个QLabel对象,并且能够显示Hello world字符串。查看某个类或函数的用法可将光标放在此类上然后按下F1,就是出现此类的帮助窗口,具体可查看此帮助。
第8行,使这个label可见。组件创建出来之后通常是不可见的,要求我们手动的使它们可见。
第9行,将应用程序的控制权移交给Qt。这时,程序的事件循环就开始了,也就是说,这时可以相应你发出的各种事件了。
下面就可以编译运行,就会出现上面的Hello World的窗口。
接下来我们来做一件有意思的事情将代码行
QLabel *label=new QLabel("Hello World");
替换为:
QLabel *label=new QLabel("Hello World
");
运行一下:
是不是很强大呢?通过使用一些简单的HTML样式格式,就可以轻松的把Qt应用程序的用户接口变的更为丰富多彩。
下一节,我们来了解一下Qt为我们自动生成的其他文件的意义以及Qt GUI 编程。
作者:荒 木
出处:http://rophie.cnblogs.com/
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。