使用Qt Creater软件编写一个“Hello World”程序,初步了解Qt Creater设计应用程序的基本过程。

1. 新建一个项目过程

1)打开Qt Creater软件,单击Qt Creater软件的菜单项"File">>>>“New File or Project"弹出New File or Project对话框。在这个对话框里选择需要创建的项目或者文件的模板。

在这个对话框中可以看到Qt Creater可以创建多种项目,在最左边的里表中单击"Application”,中间的列表中就列出了可以创建的应用程序的模板。如下:
Qt Widget Application:支持桌面平台的有图形用户界面的应用程序;
Qt Console Application:控制台应用程序无GUI界面;
Qt Quick Application-Empty:创建可以部署Qt Quick应用程序:
…………………………………………………………………………………………
…………………………………………………………………………………………

2)显示的对话框中选择Qt Widgets Application 后,单击"Choose…"按钮,出现下面的对话框:

在对话框中选择一个目录作为保存工程文件的目录,此处的目录是:“C:\Administrator\DeskTop\demo”,再设置项目的名称为“hello world”。这样新建项目后,会在“C:\Administrator\DeskTop\demo”目录下新建一个目录,项目文件保存在“C:\Administrator\DeskTop\demo\hello world\”下。

3)在设置好项目名称和保存路径后,单击“Next”按钮,出现如下图对话框:
该对话框显示了Qt Creater当前支持的所有编译工具,可以所有的编译工具也可以选择一个作为当前使用的编译工具。这样可以生成不同版本的可执行程序。

4)在选择好当前使用的编译工具后,单击对话框的"Next"按钮,弹出下图对话框:

在该对话框中可以选择创建的界面的基类,有3种基类可以选择:
QMainWindow:主窗口类,主窗口具有主菜单栏、工具栏、状态栏,类似于一般的应用程序的主窗口。
QWidget:所有具有可视界面类的基类,选择该类创建的界面对各种界面组件都可以支持。
QDialog:对话框类,可以建立一个基于对话框的界面。
此处选择QMainWindow,选择后将自动更改各个文件名。勾选Generate复选框,将自动创建用户界面文件(.UI文件),否则需要自己编成创建界面。选择好后点击"Next"按钮进入下一步操作。

5)在上一步操作结束后点击“Next”出现一个总结性的对话框,如下所示:

由对话框内容可以知道需要创建的文件和文件保存路径,单击"Finish"完成整个项目的创建。

2. 项目文件的组成和管理

在完成项目创建后,在Qt Creater软件中会弹出如下所示窗口:

在该窗口的左侧显示了以项目名称为根节点的项目文件的组织结构(目录树)和当前打开的文档名称。
在项目名称节点下面分组管理着项目内的各种源文件,具体描述如下:
hello.pro:项目管理文件,包含一些对项目的设置项。
Headers:该节点下包含的是项目内所有的头文件(.h文件)。
Sources:该节点下是项目内所有的C++源文件。
Forms:该节点下是项目内所有的界面文件(.ui文件)。
注意:左侧显示的内容不固定的,是可以通过其上方的下拉列表进行选择。
窗口的右侧显示的当前打开的文件的内容,此时显示的main.c的内容。

3. 在创建的项目中添加一个QLabel组件,使用组件在界面上显示hello world!这个内容

实现这个功能有两种方法:
1). 代码实现

2). Qt Creater 可视化设计器Qt Designer实现
双击文件目录树中的文件mainwindow.ui,出现如下图所示的窗体界面:

这个界面实际上是Qt Creater中集成的Qt Designer.窗口的左侧是分组的组件面板,中间是设计窗体,右侧是项目中组件的组织结构和当前正在操作的组件的具体属性参数(这些参数是可以更具具体要求修改的,如:修改Qlabel组件的位置和大小只需要修改geometry属性即可)
要在界面中使用QLabel组件显示hello world,只需要在左侧的组件类表中找到QLabel组件,并将其直接拉如设计区,最后在右侧的组件属性参数中修改Qlable的text属性为hello world 即可。

4. 项目的编译、调试、运行和发布

在完成项目内容的编写之后,只剩下对项目的编译,调试,运行和发布了。

绿色箭头指向的图标是编译模式选择项,在单击该图标后弹出的窗体中可以设置修改编译模式如:Debug(调试)或者Release(发布)模式。
蓝色箭头指向的图标是运行图标,单击该图标可以运行程序,如果项目未进行过编译会先自动进行编译再运行。
黄色箭头指向的图标是调试状态下运行项目,这个运行模式是需要在调试模式下编译的,项目程序在调试模式下运行,可在程序中加断点进行代码分析的。
红色箭头指向的图标是编译当前项目,单击该图标就可以编译当前项目。
成功编译运行的结果如图:

注意:如果先前未将环境变量修改,即使增加QT软件安装目录D:\QT\qt\5.10.1\mingw53_32\bin,则在单独运行调试模式或者发布模式下编译后生成的可执行程序(.exe文件)是不可行的,会弹出如下提示框:

提示缺少动态链接库,不能执行可执行程序。
在本地电脑上运行编译生成的可执行程序,只需要将QT的安装路径D:\QT\qt\5.10.1\mingw53_32\bin添加到环境变量即可解决这个问题。
如果要将可执行文件运行在其他的电脑上,除了需要以release模式编译以外还需要把D:\QT\qt\5.10.1\mingw53_32\bin中Qt5Cored.dll,Qt5Gui.dll,Qt5Svg.dll,
Qt5Widgets.dll,libEGL.dll,libGLESV2.dll,opengl32sw.dll等动态库文件

QT入门学习之软件程序开发初体验相关推荐

  1. lua语言入门学习(四)项目初体验之抽奖转盘(1)

    lua语言入门学习 今天前辈教我看了项目,感觉果然公司级的项目分工都比较严谨,很多东西都是略懂功能,但对于底层逻辑的实现并不清楚. 为了保护公司这个游戏具体实现功能上本身的隐私,日常代码分享中不会分享 ...

  2. 小程序开发初体验,从静态demo到接入Bmob数据库完全实现

    之前我胖汾公司年会.问我能不能帮忙搞个小程序方便他们进行游戏后的惩罚/抽奖使用.出了个简单的设计图.大概三天左右做了个简单的小程序.目前提交审核了.对于写过一小段时间vue来说小程序很容易上手.写法和 ...

  3. lua语言入门学习(八)项目初体验之玩家事件(2)

    lua语言入门学习 今天是实习的第二周,前辈给我的任务是熟悉playerevent中每个函数的基本功能. 文章目录 lua语言入门学习 前言 一.代码 1.代码功能自己简析 1.代码功能自己简析 2. ...

  4. 微信小程序开发初体验

    前言 最近不太忙,正好前两天看到园子里的大牛分享的微信小程序前端的UI界面--WeUI,看着非常不错,所以尝试着写了一下微信小程序 一.简单介绍下WeUI WeUI 是一套同微信原生视觉体验一致的基础 ...

  5. Qt入门学习——Qt Creator的使用

    Qt Creator介绍 通过前面<Qt快速入门(vim纯代码编写)>的学习得知,只有搭建好了 Qt 环境(Qt库和开发工具),即可通过 vim 纯代码编写 Qt 程序,再借助 Qt 里的 ...

  6. 智能学习硬件小程序开发,提升学习感受

    随着科学技术的飞速发展,各种智能学习硬件层出不穷,日常生活中的智能电子产品也愈来愈多,但是大部分硬件产品都是单独使用的,并没有配套的app或者小程序,在使用过程中总是会出现一些小插曲,比如:孩子用学习 ...

  7. 钢琴学习微信小程序开发功能

    如今的家长都希望孩子在艺术方面能够有一技之长,这样才能在将来的生活交际中游刃有余.而钢琴作为艺术中不可缺少的一部分,自然受到了很多人的青睐,因为钢琴代表着高雅和高贵的象征.是提高个人修养的表现.对于钢 ...

  8. Windows Embedded CE 6.0开发初体验(一)Windows CE概述

    这篇文章的目的并不是介绍Windows Embedded CE开发的方方面面,只是用一个初涉嵌入式领域的软件开发者的视角来介绍Windows CE开发中最常用的概念和知识,解决大家会在实际开发中碰到的 ...

  9. XPe开发初体验:XPe概述

    作者:iwinembed 转自:http://blog.itpub.net/16803921/viewspace-504417/ XP Embedded是微软Windows Embedded产品线中非 ...

最新文章

  1. linux的逻辑运算参数,Linux基础之bash脚本编程初级-逻辑运算与测试
  2. tightvnc viewer 传文件_TightVNC中文版下载_TightVNC viewer(远程控制软件)简体中文版下载【32位|64位】-华军软件园...
  3. POJ2406 KMP前缀周期
  4. 16、HTML密码框
  5. 前端学习(2773):条件编译和跨端兼容
  6. 学习 Linux,101: 使用 vi 编辑文件
  7. Android 成用户隐私安全问题严重
  8. android 崩溃捕获_Android从相机和图库捕获图像
  9. origin游戏服务器引擎
  10. Java面试:java简历包装医疗项目
  11. java英文翻译_Java实现英文文本单词翻译器功能的简单实例
  12. 08 干系人管理ITO
  13. 从零开始vue项目使用cesium开发三维地图(一)
  14. 学习做产品阶段性总结
  15. python小游戏贪吃蛇下载_python实现贪吃蛇小游戏
  16. Kubernetes核心原理(二)之Controller Manager
  17. 清华大学岂凡超:义原知识库的应用和扩充
  18. Sed 删除匹配行,匹配的字符用Shell变量替换,且变量里含有斜杠“/”时,无法删除 解决办法
  19. Deniable Encryption(CRYPTO 97‘) [Ran Canetti, Cynthia Dwork, Moni Noar, Rafail Ostrovsky] 可否认加密
  20. 数据库----数据更新

热门文章

  1. 宽带多天线无线传输技术发展展望
  2. C#使用 MailKit获取邮件中的附件(QQ邮箱/163网易邮箱)
  3. python基础思维导图
  4. 【调剂】河北大学2022年硕士研究生招生拟接收调剂专业信息
  5. 元胞自动机模拟森林火灾--matlab实现
  6. Chrome 插件下载、安装、加载正在开发的扩展程序和打包扩展程序
  7. Source Insight4.0字体大小及护眼背景配置
  8. MySQL事务、MySQL索引、MySQL索引数据结构详解
  9. 运营商-银联-手机厂商,三巨头如何依次主导NFC
  10. ItextPdf给PDF批量插入图片