qt学习笔记(一)之Hello world

转载 2015年07月09日 14:50:24

学习QT也一段时间了,今天又惊喜得到手了一本书。是时候开始记录下自己的qt学习之路了,好久没写博客了~~学习的点点滴滴还是非常重要的。

环境:Qt SDK 1.1.3 Qt版本是4.7.3 

目前我对qt也不是很了解,部分细节之后会陆续介绍。

每个程序的开始都是Hello world,这里我们也不例外

启动Qt Creator后的主界面如下

1、

2、我们选择文件里面的新建文件或工程。下一步是命名工程名,这里注意一下,qt的工程路径是不能有中文的。 

3、接下来我们可以设置类信息,我们可以创建基于某个基类的C++类,我们还可以选择创建界面,系统会创建一个*.ui的文件。我们还可以创建一个空的Qt项目,然后添加一个main.cpp,下面的程序 我是创建一个空的Qt项目。

4、我们再main.cpp里输入一下代码

  1. #include <QtGui>  
  2.   
  3. int main(int argc, char *argv[])  
  4. {  
  5.     QApplication a(argc, argv);  
  6.   
  7.     QWidget *pwidget = new QWidget; //create a new widget  
  8.   
  9.     QLabel label(pwidget);  //label's parent is pwidget  
  10.     // QLabel *label = new QLabel(pwidget);  
  11.     label.setText(QObject::tr("Hello world"));  //set the label text  
  12.     pwidget->show();    //show the pwidget  
  13.   
  14.     return a.exec();  
  15. }  
5、程序执行后的效果图

6、我们来分析下上面的程序

第一行是包含头文件。 我经常是直接包含QtGui。 我们可以打开QtGui 发现里面包含了很多模块的头文件。QtGui 定义了图形用户界面类

还有一个比较重要的头文件是QtCore,这是Qt4的基本模块,定义了其他模块使用的Qt核心的非GUI类

  1. QApplication a(argc, argv);  
创建一个QApplication对象并将用户在控制台输入的参数传递给该应用程序对象。使用Qt设计的任何GUI程序,必须包含一个QApplication对象。

  1. QWidget *pwidget = new QWidget;  
在这里我们创建一个窗口部件。

这里介绍下窗口和窗口部件的概念。

窗口:把一个图形用户界面称为窗口,它往往具有标题栏,窗口边框,能够通过鼠标拖动和改变大小等特性(如:对话框)。

窗口部件:它是对所有图形用户界面的统称,它既可以作为单独的窗口出现,也可以出现在一个窗口内部(如:标签)

  1. QLabel label(pwidget);  
  2. label.setText(QObject::tr("Hello world"));  
创建一个标签,指定其父窗口为pwidget,并设定文本内容为Helloworld

  1. pwidget->show();  

最后我们就可以显示pwidget了
QApplication::exec()语句的执行,将使得QtGUI进入一个主事件循环,直到程序中调用exit()、quit()或关闭应用程序的主窗口。主事件循环开始后,它将会接收用户界面事件以及其他事件源的事件,并向相应的窗口进行分发和处理。此外,它还完成Qt应用程序的初始化和应用程序运行结束后的善后处理,并提供会话管理(session management)

7、程序中使用中文

如果程序需要使用中文的话,我们必须在main.cpp里加入

  1. QTextCodec::setCodecForTr(QTextCodec::codecForLocale());   

或者

  1. QTextCodec::setCodecForTr(QTextCodec::codecForName("gb18030"));  
//字符集GB18030为国家标准

否则界面显示的中文会出现乱码。

Qt学习笔记(1) — 深入了解Hello World的创建过程

年初的时候就准备学习Qt了,因为工作原因被搁浅好久,现在开始学也不晚,以后每周更新2遍博文作为总结。学过Windows开发的,会觉得Qt很亲切,学起来不是很费劲(PS: 环境搭建比较简单,本文不作说明...

Qt学习笔记之Hello World

用Qt的第一个程序必然是怎样s

QT之GUI学习笔记(一)___hello World

在http://blog.51cto.com/zt/20中有全部的学习笔记。我只是按照自己的步骤将过程再进行一遍来加深理解。 1.打开Qt Creator,点击 文件->新建 按照如图所示步骤进行...

qt学习笔记(一)之Hello world

学习QT也一段时间了,今天又惊喜得到手了一本书。是时候开始记录下自己的qt学习之路了,好久没写博客了~~学习的点点滴滴还是非常重要的。 环境:Qt SDK 1.1.3 Qt版本是4.7.3  目前...

API Demos 2.3 学习笔记 (2)--创建第一个Android项目(Hello World!)

更多精彩内容,请点击阅读:《API Demos 2.3 学习笔记》 一、根据新建项目向导创建项目 启动Eclipse,选择"File"--"New"--"Project",打开新建项目向导。 ...

32位汇编语言学习笔记(21)--用NASM实现Hello World小程序

前面20篇汇编学习笔记主要是学习《深入理解计算机系统》过程中所记录的笔记,接下来打算学一下另外一本书《Assembly Language step by step programming with ...

Gradle学习笔记(三)安装Gradle及Hello World

前面也写了两篇关于Gradle学习的笔记,也都是笔者自己在网上查找资料总结出来的,但是发现这种快餐文化还是有些令人失望的,并没有什么卵用,但是由于Gradle还在开发完善当中,中文版Gradle市面上...

Python学习笔记:01 环境搭建和“Hello World!”

刚刚接触Python两个月,把积累的东西记录下来,算是给以后万一用到的时候做一个参考,也希望能分享一下。 初学无知,多多关照。 环境安装 这里介绍如何在Windows下搭建P...
  • rex_xia
  • rex_xia
  • 2014年02月12日 20:40
  • 679

[每日一学]MFC学习笔记——Hello World

简介   MFC(Microsoft Foundation Classes),是一个微软公司提供的类库(class libraries),以C++类的形式封装了Windows的API,并且包含一...

Lucene5 学习笔记(1) —— Hello World

这是第1节的内容,让我们对 lucene 全文搜索引擎有一个大概的认识。 对应 孔浩老师 01_lucenc简介和创建索引初步 这1节视频的内容。全文搜索引擎存在的意义:根据索引来查找,提高效率。方...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:qt学习笔记(一)之Hello world
举报原因:
原因补充:

(最多只允许输入30个字)