摘要:
做过Web前端开发的一定对Font Awesome不会陌生,Font Awesome号称是为Bootstrap设计的完美图标字体,经常出现在各类网页中,非常流行。 这么好的资源,能不能在Qt应用程序中使用呢?答案是肯定的。而且使用起来非常简单。 1. 先来了解下 Font Awesome 的一些特性 阅读全文
摘要:
重启应用程序是一种常见的操作,在Qt中实现非常简单,需要用到QProcess类一个静态方法: 下面通过一个示例来演示: 【创建一个窗口】 接下来实现点击【Restart】按钮实现程序重启的功能。 在main函数中判断退出码是否为“RETCODE_RESTART”,来决定是否重启。 【举一反三】按照这 阅读全文
摘要:
游戏2D地图编辑器: 著名的TileMap编辑器,做2D游戏开发的一定不会陌生。 Go 语言的IDE: Go语言的集成开发环境。 Clementine Music Player: 功能很完善且跨平台支持做得很好的音乐播放器,完成度高,跨平台项目可以参考它。 QtAV(FFmpeg的Qt封装): 官网 阅读全文
摘要:
Qt提供了丰富的容器类型,如:QList、QVector、QMap等等。详细的使用方法可以参考官方文档,网上也有很多示例文章,不过大部分文章的举例都是使用基础类型:如int、QString等。如果我们要存储一个对象类型,应该如何做呢?—— 当然是和int类型一样操作,因为这些容器类都是泛型的。不过, 阅读全文
摘要:
Qt 编程指南 持续关注一本正在编写的Qt编程指南,期待作者早日完成创作。 阅读全文
摘要:
注意:这里讨论的是在不编译Qt源码的情况下,推荐下载的官方编译版本。 支持XP SP3以及之后的Windows版本:推荐 Qt5.6 或 Qt5.9,这两个版本是LTS版本(即长期支持版本),Bug较少,相对稳定。目前最新版的下载地址: Qt5.6.3: http://download.qt.io/ 阅读全文
摘要:
Qt绘图的设置 Qt绘图的设置 了解Qt绘图函数 了解Qt绘图函数 绘图方法在上图已经非常清晰的展示了,方法参数也很简单,使用时一看便知。 Qt画笔风格 Qt画笔风格 1)画刷风格 2)画笔风格 3)连接点风格 4)顶端风格 实战前的准备 实战前的准备 创建一个自定义的Widget: 实现Widge 阅读全文
摘要:
方案一:(仅适用于使用msvc编译器) 在PRO文件中添加一行指令即可, 方案二:(适用于mingw32编译器) 先创建一个 .manifest 文件,如:app.manifest,文件内容如下: 然后在exe所在的目录中执行mt指令(mt指令在VS自带的“开发人员命令提示”工具中) 注意:exe和 阅读全文
摘要:
分享两个资源,对于系统了解Qt框架的整体脉络很有帮助。 Qt4类关系图+Qt5类关系图,PDF+JPG格式 【下载】 Qt5类关系图(基于Qt5.1版),JPG格式【下载】 阅读全文
摘要:
今天偶然看到一条关于Qt5.10发布的消息,发现Qt经历了诺基亚风波之后发展得依然良好,感到很欣慰。回头看上次关注Qt技术还是2011年,那时候用Qt4.7做一个小项目,对于一个写Win32界面和MFC的程序员来说,有种相见恨晚的感觉。如今时间已经过了近7年,又有桌面项目要做,当然首选Qt5。 先收 阅读全文
摘要:
1.设置Windows最低版本要求[Setup]: MinVersion格式:a.bb,c.dd,这里 a.bb 是 Windows 版本,c.dd 是 Windows NT 版本。 默认值:4.0,4.0 描述:这个指令让你指定你的软件运行必须的 Windows 或 Windows NT 版本最小版本,要防止你的程序在 Windows 或 Windows NT 下运行,请在最小版本中的一个指定“0”。构建号和/或安全服务包级别可以包含在版本号中。如果用户系统不适合最小版本需求,安装程序将出现一个错误消息并退出。2. 在[Code]段判断系统版本语法:procedure GetWindow 阅读全文
摘要:
Inno Setup 支持在同一个目录中安装多个应用程序,所以根据安装的先后次序自动将卸载程序文件命名为 unins000.exe,unins001.exe,unins002.exe 等等。这是 INNO SETUP 自身的功能。请参阅 http://www.jrsoftware.org/iskb.php?uninstallername 。一旦安装过程结束后,你当然可以将卸载文件的名称改成任意其它的文件名,注意的是你除了要更改安装目录里面的 unins00X.exe 和 unins00X.dat,还要更改注册表中的相关卸载信息。由于卸载程序文件的实际位置和名称可以用常量 {uninstalle 阅读全文
摘要:
[Files]Source: MyPackage.msi; DestDir: {tmp}[Run]Filename: {%COMSPEC}; Parameters: /C msiexec -i {tmp}\MyPacakge.msi; WorkingDir:{tmp}; StatusMsg: “Installing my package”// 或者[Run]Filename: msiexec.exe; Parameters: “-i “”{src}\MyPacakge.msi”" -qn”; WorkingDir: “{src}”; StatusMsg: “Installing my pack 阅读全文
摘要:
如何使用:---------------------------------文档约定 创建安装程序 创建脚本 段内参数 一些常量 公共参数 安装脚本段 [Setup] 段 [Dirs] 段 [Files] 段 [Icons] 段 [INI] 段 [InstallDelete] 段 [Messages] 段 [Registry] 段 [Run] 段 [UninstallDelete] 段 [UninstallRun] 段 其它问题其它注意事项 在命令行执行编译器 安装命令行参数 ---------------------------------文档约定 "Windows 95/NT 4+"这是 阅读全文
摘要:
{app}应用程序目录,这是用户在安装向导的选择安装目录页里面所选择的。例如:如果你使用了 {app}\MYPROG.EXE 作为一项并且用户选择了“C:\MYPROG”作为应用程序的目录,那么安装程序就会将它转换成“C:\MYPROG\MYPROG.EXE”。{win}系统的 Windows 目录。 例如:如果你使用了 {win}\MYPROG.INI 作为一项并且系统的 Windows 目录是“C:\WINDOWS”,那么安装程序就会将它转换成“C:\WINDOWS\MYPROG.INI”。{sys}系统的 Windows 系统(System)目录(在 Windows NT/2000 下是 阅读全文
摘要:
1、调用DOS命令或批处理等其它命令行工具等Exec(ExpandConstant(‘{cmd}’), ‘/c dir c:\ a.txt’,ExpandConstant(‘{app}’), SW_SHOWNORMAL, ewNoWait, ResultCode);2、不显示一些特定的安装界面[code]function ShouldSkipPage(PageID: Integer): Boolean;beginif PageID=wpReady thenresult := true;end;wpReady 是准备安装界面PageID查询 INNO帮助中的 Pascal 脚本: 事件函数常量 阅读全文
摘要:
1 、如何让协议许可页面默认选中我同意按钮[code]procedure InitializeWizard();beginWizardForm.LICENSEACCEPTEDRADIO.Checked := true;end;2、自定义安装程序右上角图片大小[code]procedure InitializeWizard();beginWizardForm.WizardSmallBitmapImage.width:=150; //设置页眉图片的大小WizardForm.WizardSmallBitmapImage.left:=WizardForm.width-150; //设置左边页眉留出的空 阅读全文
摘要:
0 前言: string 的角色C++ 语言是个十分优秀的语言,但优秀并不表示完美。还是有许多人不愿意使用C或者C++,为什么?原因众多,其中之一就是C/C++的文本处理功能太麻烦,用起来很不方便。以前没有接触过其他语言时,每当别人这么说,我总是不屑一顾,认为他们根本就没有领会C++的精华,或者不太懂C++,现在我接触 perl, php, 和Shell脚本以后,开始理解了以前为什么有人说C++文本处理不方便了。举例来说,如果文本格式是:用户名 电话号码,文件名name.txtTom 23245332Jenny 22231231Heny 22183942Tom 23245332...现在我们需 阅读全文
摘要:
刚学Qt不久,在Windows上完成了一个简单的Qt GUI程序,用到了QWebView,布局控件,自定义样式等。首先跨平台测试一下,拿到Ubuntu上编译运行,界面表现基本不走样。Cool!Qt的StyleSheet果然很好用。回到Windows,学习一下Qt程序的部署,发布到另一台在一台完全没有装QT的系统上执行。打包了用到的dll:mingwm10.dll,libgcc_s_dw2-1.dll// mingw和gcc的库QtCore4.dll,QtGui4.dll// Qt程序核心库和Gui库QtWebKit4.dll,QtNetwork4.dll// 用到QWebView,所以必须带上 阅读全文
摘要:
在QT支持国际化时,常调用函数QLocale::system().name()以“语言_国家”的形式返回系统场景的名字,比如简体中文是zh,中国的国家代码为CN,所以返回值为zh_CN。ISO语言代码(ISO-639)---------------------------------------------------------af南非荷兰语sq阿尔巴尼亚语ar_sa阿拉伯语(沙特阿拉伯)ar_iq阿拉伯语(伊拉克)ar_eg阿拉伯语(埃及)ar_ly阿拉伯语(利比亚)ar_dz阿拉伯语(阿尔及利亚)ar_ma阿拉伯语(摩洛哥)ar_tn阿拉伯语(突尼斯)ar_om阿拉伯语(阿曼)ar_ye 阅读全文