[开源]入坑Qt,我的第一个小程序:MD5计算器
MFC和Win32搞了好几年了,也算是懂了个皮毛,但是一直觉得用这两者开发软件都很麻烦,需要将大量的代码花费在UI等地方上。而且MFC对C++的利用,也差不多仅限于类(有些地方也用到模板,但很少),其他C++的特性基本上没有怎么利用,更偏向于C语言的Windows开发。最近听说有Qt这个平台,做UI、基本功能等都很方便,还可以轻松跨平台。我便试着入坑Qt,来体验一下,到底有多好用。
我写了一个小项目:MD5计算器,支持单个或多个文件的MD5计算和单个文件的MD5校验(其实多文件批量md5校验也不是不能搞,但我这人很懒,软件什么的都随缘更新,也没几个人用,暂时就这样吧)。这也算是我的qt初体验。我在使用过程中,也不得不承认,qt确实香。
小项目的全部工程文件、历史版本的可执行文件打包下载链接(tx微云):
点击打开点击打开
其中,.pro文件为项目文件。我使用的Qt版本: v4.8.7,编译器:MinGW v4.2.0,Debug版为动态编译,Release版为静态编译。
题外话:动态编译速度快,exe体积小,但加上运行需要的DLL,大小有几十个MB甚至上百个MB,实在太大。所以按照教程,在朋友的帮助下,手动编译了Qt的静态库,达到静态编译的目的。虽然过程很麻烦,但这是一劳永逸的事情。静态编译Release版,出来的exe有十几兆,经过UPX的LZMA引擎压缩后,可达4兆左右,具体取决于代码量以及所用的库。这个大小虽然跟Win32、MFC出来的程序相比要大很多,但是作为一个Qt程序,这已经算极致大小了。且Qt开发,可比MFC开发要容易、方便得多。这种方式编译的文件,基本不需要运行库,Windows 2000都可以运行。
若有问题,欢迎大家指正。我也墙裂推荐用C++搞开发的试用一下Qt,只有你亲身体验过,你才会意识到它真的香。
[开源]入坑Qt,我的第一个小程序:MD5计算器的更多相关文章
- TODO:即将开发的第一个小程序
TODO:即将开发的第一个小程序 微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验.个人理解小程序是寄宿在微信平台上的一个前端框架,具有跨平台功能, ...
- Maven的第一个小程序
这里是介绍关于maven的第一个小程序 关于maven的安装 : Install Maven in your computer 先看看目录结构: 这是本来的项目目录结构,由于maven有自己的目录结构 ...
- 微信小程序-----安装,编写第一个小程序和运行到手机端
第一步: 微信公众平台注册账号,并选择小程序,网址:mp.weixin.qq.com 填写相关信息,如:主体类型(个人或者企业) AppID 在开发中都是用的到的,服务器域名在网络请求也是用的到的. ...
- Struts2学习笔记——Struts2搭建和第一个小程序
1.新建web项目 2.配置Struts2核心过滤器 (1)打开web.xml文件,做以下配置: <?xml version="1.0" encoding="UTF ...
- 自学Android的第一个小程序(小布局、button点击事件、toast弹出)
因为上班,学习时间有限,昨晚才根据教程写了一个小程序,今天忙里偷闲写一下如何实现的,来加深一下印象. 首先创建一个Android项目, 通过activity_xxx.xml布局文件来添加组件来达到自己 ...
- 动手搭建第一个小程序音视频Demo
欢迎大家前往云+社区,获取更多腾讯海量技术实践干货哦~ 作者:小程序音视频产品经理 腾讯云提供了全套技术文档和源码来帮助您快速构建一个音视频小程序,但是再好的源码和文档也有学习成本,为了尽快的能调试起 ...
- JAVA版开源微信管家—JeeWx捷微3.1小程序版本发布,支持微信公众号,微信企业号,支付窗
支持小程序,JeeWx捷微3.1小程序版本发布^_^ JeeWx捷微V3.1--多触点小程序版本管理平台(支持微信公众号,微信企业号,支付窗) JeeWx捷微V3.1.0版本紧跟微信小程序更新,在原有 ...
- 第一篇、微信小程序_01计算器
官方文档地址:https://mp.weixin.qq.com/debug/wxadoc/dev/index.html 一.计算器的首页布局 第一部分WXML: <view class=&quo ...
- Pyqt5-Python应用开发——第一个小程序的实现
环境:python 3.6.6 编辑器:pycharm 其他:QtDesigner:Qt Designer,是一个直观可见的全方位 GUI 构造器,它所设计出来的用户界面能够在多种平台上使用.它是 Q ...
随机推荐
- QL Server 创建用户时报错:15023 用户,组或角色'XXX'在当前数据库中已存在?
在使用SQL Server 2000时,我们经常会遇到一个情况:需要把一台服务器上的数据库转移到另外一台服务器上.而转移完成后,需要给一个"登录"关联一个"用户" ...
- SQL 清除数据库日志
exec sp_detach_db 'MCS4WLSQM','true' --运行上一个命令. --改名LOG文件后再关闭上一行代码,然后再运行下一行代码 exec sp_attach_single_ ...
- ACdream 1007 a+b 快速幂 java秒啊,快速幂 避免 负数移位出错
a + b ( sigma (ai^x) ) % mod 1 import java.util.*; 2 import java.math.*; 3 import java.io.*; 4 p ...
- AcWing 241. 楼兰图腾
#include<bits/stdc++.h> using namespace std; const int N=2e5+5; typedef long long ll; ll ans,l ...
- JAVA 类修饰符
JAVA类的修饰符主要有public,default,protected,private,final,abstract,static 其中外部类中用到的只有public,final,abstract或 ...
- head tail 用法
tail 显示最后几行,-n后面的数字无符号,表示行数 tail -n 1000:显示最后1000行 tail -n +1000:从1000行开始显示到最后 tail -n -1000:从负1000行 ...
- 160crackme002
一.查壳 结果:vb写的,并且无壳 二.运行程序 发现了这个程度调用了vb调用窗口的api.这时有两种方式: 1.再重新调试,运行到有窗口的时候,F12暂停,按ctrl+K,查看dll调用,再数据窗口 ...
- java面向对象的理解(个人)
面向对象是Java的基本特征,在程序开发的过程中基于面向过程的一种思维,将功能封装进对象,强调具备这些功能的对象和调用结果,不关注具体的实现过程. 面向对象的特点:是一种更符合人们思考习惯的思想,可以 ...
- 「CF527E」 Data Center Drama
「CF527E」 Data Center Drama 传送门 显然一个环肯定满足题目条件. 然后我就开始想:先整一棵 \(\texttt{DFS}\) 树,然后非树边从深度深的节点向深度浅的节点连边, ...
- File类与常用IO流第十章——序列化流
第十章.序列化流 序列化流和反序列化流概述 序列化:用一个字节序列表示一个对象,该字节序列包含该对象的数据.对象的类型和对象中存储的属性等等信息.字节序列写出到文件后,相当于文件中持久保存了一个对象的 ...