Hello World程序演示Qt项目的建立、编译、运行和发布

一、Qt项目的建立


1、选择项目模板。


选择“文件-->新建文件或工程”,在选择模板页面选择Qt C++项目中的“Qt Gui应用”一项,然后单击“选择”按钮。

2、输入项目信息。

在“项目介绍和位置”页面输入项目的名称为helloworld,然后单击创建路径右边的“浏览”按钮,选择把要创建的项目放在哪个位置:

3、输入类信息。

在“类信息”页面中创建一个自定义类。这里设定类名为HelloDialog,基类选择QDialog,表明该类继承自QDialog类,使用这个类可以生成一个对话框界面。这时下面的头文件、源文件和界面文件都会自动生成,保持默认即可:

4、设置项目管理。

此项目不涉及,直接单击“完成”:

5、完成项目设置。

这里只有一个Windows桌面版本的Qt4.7.2,所以默认选择它就可以了。然后单击“完成”按钮完成项目的创建。

项目建立完成后会直接进入编辑模式。

自动生成的项目文件列表如下:

双击hellodialog.ui文件可以进行界面设计,界面简单设计如下:

二、项目的编译、运行


可以使用快捷键Ctrl+R或者通过按下左下角的运行按钮
来编译运行程序。这时可能会弹出“保存修改”对话框。这是因为刚才在设计模式更改了界面,而hellodialog.ui文件被修改了但是还没有保存。现在要编译运行该程序,就要先保存所有文件。可以选中“构建之前总是先保存文件”选项,以后再运行程序时就可以自动保存文件。然后单击“保存所有文件”按钮:

运行结果如下:

直接运行生成的可执行文件(helloworld-build-desktop\debug目录下):(需要复制4个dll文件)

双击helloworld.exe运行,弹出如下所示的警告对话框,提示缺少mingwm10.dll文件,可以想到应用程序运行是需要dll动态链接库的,所以应该去Qt的安装目录下寻找该文件。在Qt安装目录的bin目录(笔者这里的路径是D:\Qt\4.7.2\bin)中找到该文件,把这里的mingwm10.dll文件复制到debug文件夹中。这时运行程序又会提示缺少其他的文件,可以依次将它们复制过来,一共有4个文件,分别是mingwm10.dll、libgcc_s_dw2-1.dll、QtCored4.dll和QtGuid4.dll。再次运行程序发现已经没有问题了。

直接运行生成的可执行文件(不需要复制dll文件,但需要设置系统环境变量)

如果想不复制dll文件就可以直接运行程序,那么需要将D:\Qt\4.7.2\bin目录加入到系统Path环境变量中去,这样程序运行时就可以自动找到bin目录中的dll文件了。

对于win7系统设置环境变量操作如下:

在变量值的最后添上“;D:\Qt\4.7.2\bin”(注意前面有一个英文的分号),然后单击确定即可。

三、程序的发布


现在程序已经编译完成,那么怎样来发布它,让它在别人的计算机上也能运行呢?前面生成的debug版本的程序依赖的dll文件很大,那是因为debug版本的程序中包含了调试信息,可以用来调试。而真正要发布程序时,要使用release版本。

helloworld程序的release版本的编译:

在左下角的目标选择器(Target selector)中将构建目标设置为Release,然后单击运行图标

编译完成之后再看工程目录中的release目录中,已经生成了helloworld.exe文件。它的大小与前面的debug版本的helloworld.exe的大小相差很大。

如果前面已经添加了Path系统环境变量,那么现在就可以直接双击运行该程序。如果要使现在的Release版本的程序可以在别人的计算机上运行(当然,对方的计算机也要是windows平台),那么还是需要将几个dll文件与其一起发布。

可以在桌面上新建一个文件夹,重命名为“我的第一个Qt程序”,然后将release文件夹中的helloworld.exe复制过来,再去Qt安装目录的bin目录中将mingwm10.dll、libgcc_s_dw2-1.dll、QtCore4.dll和QtGui4.dll(注意不是QtCored4.dll和QtGuid4.dll,它们是debug版本的库文件)复制过来。现在整个文件夹一共有12MB,如果使用WinRAR等打包压缩软件对它进行压缩,就只有4MB了,已经到达了可以接受的程度,这时就可以将压缩包发布出去了。

时间: 2024-10-22 01:49:40

Hello World程序演示Qt项目的建立、编译、运行和发布的相关文章

Qt入门之基础篇 ( 二 ) :Qt项目建立、编译、运行和发布过程解析

转载请注明出处:CN_Simo. 题解: 本篇内容主讲Qt应用从创建到发布的整个过程,旨在帮助读者能够快速走进Qt的世界. 本来计划是讲解Qt源码静态编译,如此的话读者可能并不能清楚地知道为何要静态编译,所以借此篇内容说明一下原由并为之后文章的学习做准备. 即使本片内容只是在围绕一个小小的HelloWorld程序开展,但还是希望朋友们不要急于求成,"欲速则不达". 文章整体思路: 我们循序渐进地来看,一个Qt应用的完成有以下一个重要的步骤: 项目创建->源码编译->程序运行

创建Qt项目

创建Qt项目 1     创建Qt项目 2.1 使用向导创建 打开Qt Creator 界面选择 New Project或者选择菜单栏 [文件]-[新建文件或项目]菜单项 弹出New Project对话框,选择Qt Widgets Application, 选择[Choose]按钮,弹出如下对话框 设置项目名称和路径,按照向导进行下一步, 选择编译套件 向导会默认添加一个继承自CMainWindow的类,可以在此修改类的名字和基类.继续下一步 即可创建出一个Qt桌面程序. 2.2       手

程序员到项目经理:从内而外的提升

转自:http://www.cnblogs.com/watsonyin/archive/2012/09/10/2679528.html 目录 从程序员到项目经理(一):为什么要当项目经理 从程序员到项目经理(二):升职之辨 从程序员到项目经理(三):认识项目经理 从程序员到项目经理(四):外行可以领导内行吗 从程序员到项目经理(五):程序员加油站,不是人人都懂的学习要点 从程序员到项目经理(六):程序员加油站 — 懂电脑更要懂人脑 从程序员到项目经理(七):程序员加油站 — 完美主义也是一种错

Qt项目实战2:简单的图片查看器(1)

在博文http://www.cnblogs.com/hancq/p/5817108.html中介绍了使用空的Qt项目创建带有菜单栏.工具栏的界面. 这里,使用一个简单的图片查看器项目,来熟悉一下Qt的图片显示和基本操作. 该项目分为两部分: (1)实现图片的打开.关闭.居中显示.上一张/下一张切换 (2)实现图片的放大.缩小.左旋.右旋.另存为等操作 需要用的Qt类: QFileDialog QImage QPixmap QFileInfo 使用空的Qt项目创建带有菜单栏和工具栏的界面的操作参考

从程序员到项目经理

“从程序员到项目经理”,这个标题让我想起了很久以前一本书的名字<从Javascript到Java>.然而,从Javascript到Java充其量只是工具的更新,而从程序员到项目经理,却是一个脱胎换骨的过程.从Javascript到Java,是一个取巧的方法:而从程序员到项目经理,却并无捷径可走,必须从内而外的改变和提升. 一.为什么要当项目经理 1. 问题本质 如果我对一个老程序员说:“有必要转项目经理啦”,很多人第一反应是“为什么一定要当项目经理?!”,反问很给力,基至会让人哑口无言.但反问

关于Silverlight项目的建立和怎么运行

1.在新建Silverlight项目时候,如果不勾选[在解决方案中的新网站或现有网站上承载Silverlight应用程序[H]]的话,就不会建相应的Web网站,只能设置属性[允许在浏览器外运行]才能运行效果.→如果勾选了的话可以生成相应的Web网站,不但可以在浏览器中运行执行还能在浏览器外执行运行. 关于Silverlight项目的建立和怎么运行,布布扣,bubuko.com

从程序员到项目经理(27):怎样给领导汇报工作【转载】

如果有一天领导叫你汇报一下项目状况,你会怎样来回答呢?在项目汇报方面,我总结有三种类型的项目经理,看看你是属于哪一种: 第一种,报喜不报忧.这种项目经理就像和珅一样圆滑,传达给领导的永远是好消息:进展总是顺利的,团队一定是和谐的,客户必定是满意的,天下永远是太平的,仿佛天气永远是晴空万里,永远不会刮风下雨似的.领导听了往往也是眉开眼笑,点头赞许. 第二种恰好相反,总是显得忧心忡忡.也许是由于项目经理有很强的危机感,每次汇报必然是听上去大问题套着小问题,项目危机重重,好像天快塌下来了似的.这种项目

从程序员到项目经理(4):程序员加油站 -- 不是人人都懂的学习要点

学习是一种基础性的能力.然而,“吾生也有涯,而知也无涯.”,如果学习不注意方法,则会“以有涯随无涯,殆矣”. 一.学习也是一种能力 看到这个标题,有人会说:“学习,谁不会?”的确,学习就像吃饭睡觉一样,是人的一种本能,人人都有学习的能力.我们在刚出生的时候,什么也不知道,是一张真正的白纸,我们靠学习的本能,学会了走路.说话.穿衣服…后来,我们上学了,老师把书本上的知识一点一点灌输到我们的脑子里,我们掌握的知识越来越多,与此同时,我们学习能力却好像越来越差了,习惯了被别人喂饱,似乎忘记了怎么来喂自

Web应用程序与网站项目的区别 by: MSDN

经常看见有人问VS项目里新建网站和新建Web应用程序有什么区别,而回答也都很多很多. 我就再次引用下MSDN的回答吧! MSDN 官方的回答页面地址:http://msdn.microsoft.com/zh-cn/library/k33801s3(v=vs.100).aspx 原文如下: Web 应用程序项目与网站项目 .NET Framework 4 Web application projects or Web site projects.'>在 Visual Studio 中,可以创建&quo