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之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  目前...

【初学】Objective-C学习笔记-献给我们敬爱的Hello World!

Hello World!永恒的经典!Xcode也不会另辟蹊径,独树一帜。 在Xcode编译器下,创建一个C语言程序 步骤如下: 1.创建一个控制台的程序 2.填写项目名【Hel...

Hello World"——Objective-C 学习笔记(1.1)

今天开始记录我的Objective-C学习笔记。开发平台是Mac 10.6.8,Xcode4.0. 建议读者有C类型语言的基础。 我是用虚拟机装苹果系统的,也建议条件允许下这样做。因为装在真机器上...

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

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

SSH(Spring+Struts+Hibernate)学习笔记(三)Struts 2 Hello World

本文以Hello World为例介绍Struts 2的简单应用 开发工具:Eclipse EE Juno 4.2 运行环境:Java 1.7+Tomcat 7+Struts 2.3.4 1....

Spring Boot学习笔记-从Hello World开始 (一)

最近Spring boot可是够火,自己探探路,记录下学习过程和踩过的坑。

JAX-RPC学习笔记(1)-Hello World!

目标: 写一个基于JAX-RPC的webservice程序-HelloWorld 1.概念    JAX-RPC:Java API for XML-based RPC(Remote Procedure...

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

这是第1节的内容,让我们对 lucene 全文搜索引擎有一个大概的认识。 对应 孔浩老师 01_lucenc简介和创建索引初步 这1节视频的内容。全文搜索引擎存在的意义:根据索引来查找,提高效率。方...

汇编学习笔记:第一个程序,Hello World!!!

==============第一个程序,Hello World!!!=========================== 编写执行过程: 1:用文本编辑器编写汇编源程序 2:对源程序进行编译连...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

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