mfc程序转化为qt_小峰的QT学习笔记

985270bc648501eb0a9fa7c58d5d983d.png

我的专业是输电线路,上个学期,我们开了一门架空线路设计基础的课,当时有一个大作业是计算线路的比载,临界档距,弧垂最低点和安装曲线。恰逢一门结课考试结束,大作业ddl快到,我和另外两个同专业的室友除了有课得出门,其他时间全部在寝室里熬这个大作业。熬了三天之后终于在ddl之前交上大作业。

因此,当时就萌生了一个想法,这么多复杂的重复计算,如果能用程序来解决,岂不是省心又省事。

fd7148383ba6be02696bb8511a7c0a1d.png
当时的朋友圈(里面的计算的数据还是错的)

于是,这个寒假开始,我便开始准备着这件事,利用大二的时候学过的c++知识(当时学的不深,过了一年没怎么用还忘了很多),用c语言编了一个win32控制台程序,通过输入天气情况数据和导线参数,按下回车之后立马将所有需要的数据算出来。

47019824bbfd0b11a5f84e4ae48f3a1c.png
当这个计算代码能运行起来的时候真的高兴的不要不要的

但是,只有这样一个后台程序怎么能给别人使用呢。最起码也需要有一个界面显示的样子,于是凭借着大二遗留着没忘记的c++知识,我想到用MFC来完成界面的设计。MFC虽然功能很齐全,使用的方法也算操作简便,但是当我进编程界面的时候,很多编码看不懂,瞬间有了一种劝退的感觉,这个头文件里的内容看不懂,那个原文件里的内容也不是很通俗易懂。

后来,刷了几天b站和知乎,我发现了QT这个软件。看了传智播客的几个入门视频,不由的被QT强大的插件库,简洁的ui设计还有优雅的代码行吸引。(对新手来说真的挺容易入门的)

照着视频完整做了一个翻金币小游戏的例子,掌握了一些基本的用法,但是当自己开始做自己的软件时,还是遇到了好多问题,于是想静下心来,好好的学习一下QT这个软件,买了一本参考书《QT5.9C++开发指南》,为了让自己更好的学习这本书的内容,在知乎上面更新自己的每次学习笔记。

——————————————————————————————————————

简要介绍一下QT,QT是一个非常优秀的跨平台应用开发软件。它有许多程序开发类库,可以通过调用各种类库来搭建GUI界面,就想搭乐高积木一样,这点便是我觉得他很有趣的地方。QT支持C++来进行应用开发,因此需要有一定的C++基础,因为之前学的快忘了,边学习QT的过程中还在学习C++,(这里强推清华大学C++基础课程 基础篇和进阶篇,在b站上可以搜到)。QT有商业版和社区版,商业版不用多说,就是要收费的版本,一般大家用的都是社区版,社区版的功能对于平时开发已经足够了。使用QT的过程中强烈推荐搭配着下载时自带的Assistant用,它是一本记录QT函数功能的手册(是英语的,不过没有什么难得句式,遇到看不懂的英语用有道翻译就可以了)

我下的是QT5.9MinGW 32-bit版本,听传智播客的老师说,这个版本出错少(- -其实我不是很懂他说的意思,看他是用这个的,便也下了这个)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/457533.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【IDEA 2016】intellij idea tomcat jsp 热部署

刚开始用IDEA,落伍的我,只是觉得IDEA好看。可以换界面。想法如此的low。 真是不太会用啊,弄好了tomcat。程序启动竟然改动一下就要重启,JSP页面也一样。 IDEA可以配置热部署,打开tomcat配置页面,将红框处&a…

设计模式11---组合模式(Composite Pattern)

一、组合模式定义 将对象组合成树形结构以表示“部分-整体”的层次结构,使得用户对单个对象和组合对象的使用具有一致性。Compose objects into tree structures to represent part-whole hierarchies. Composite lets clients treat individual objects and compos…

python实现Redis订阅发布

Redis 发布订阅 Redis 发布订阅可以用在像消息通知,群聊,定向推送,参数刷新加载等业务场景 发布订阅模型有三个角色: 发布者(Publisher)订阅者(Subscriber)频道(channel) 每个订阅者可以订阅多个频道&am…

iOS开发UI篇—xib的简单使用

一、简单介绍 xib和storyboard的比较,一个轻量级一个重量级。 共同点: 都用来描述软件界面 都用Interface Builder工具来编辑 不同点: Xib是轻量级的,用来描述局部的UI界面 Storyboard是重量级的,用来描述整个软件的多个界面&…

【云栖计算之旅】线下沙龙第2期精彩预告:Docker在云平台上的最佳实践

Docker是一个开源的应用容器引擎,提供了一种在安全、可重复的环境中自动部署软件的方式,允许开发者将他们的应用和依赖包打包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化。容器完全使用沙箱机制&…

mysql int类型的长度值

整数类型的存储和范围(来自mysql手册) 类型字节最小值最大值(带符号的/无符号的)(带符号的/无符号的)TINYINT1-1281270255SMALLINT2-3276832767065535MEDIUMINT3-83886088388607016777215INT4-2147483648214748364704294967295BIGINT8-92233720368547758089223372036854775807…

龙王我当定了(一个在QQ刷龙王的脚本)

自从学了python,龙王再也没丢过,就是经常被打, QQ 和 TIM 都可以,发送时要把聊天窗口打开。 # 如果import报错,那可以pip下载这几个模块试一试 import win32gui import win32con import win32clipboard as w import random from…

navicat for mysql 数据库备份与还原

一, 首先设置, 备份保存路径 工具 -> 选项 点开 其他 -> 日志文件保存路径 二. 开始备份 备份分两种, 一种是以sql保存, 一种是保存为备份 SQL保存 右键点击你要备份的数据库, -> 转储SQL文件 选择位置和文件名 开始转储 导入 建议 删除所有表 或 重新建数据库 同导出…

DES的原理及python实现

DES加密算法原理及实现 DES是一种对称加密算法【即发送者与接收者持有相同的密钥】,它的基本原理是将要加密的数据划分为n个64位的块,然后使用一个56位的密钥逐个加密每一个64位的块,得到n个64位的密文块,最后将密文块拼接起来得…

华为手机充满有提醒吗_2020手机充电速度排名:最快21分钟充满,华为第15名

5G手机扎堆出现,中国5G基站数量也是不断增多,中国移动曾经表态,2020年底将会在全国地级市覆盖5G网络,全民5G时代终于到来!从目前国内手机出货量数据来看,5G手机占比已经达到了六成以上,国产5G手…

关于移动手机端富文本编辑器qeditor图片上传改造

日前项目需要在移动端增加富文本编辑,上网找了下,大多数都是针对pc版的,不太兼容手机,当然由于手机屏幕小等原因也限制富文本编辑器的众多强大功能,所以要找的编辑器功能必须是精简的。 找了好久,发现qedit…

Java IO 系统

Java IO系统 File类 用来处理文件目录,既可以代表一个特定文件的名称,也可以代表一组文件的名称,如果代表的是一个文件组,可以调用File.list()方法返回一个字符数组。 list()不传递任何参数时返回该目录下所有文件或文件名的字…

javascript/jquery高度宽度详情解说分析

为什么80%的码农都做不了架构师?>>> 一、window对象表示浏览器中打开的窗口 二、window对象可以省略 一、document对象是window对象的一部分 二、浏览器的HTML文档成为Document对象 window.location和document.location window对象的location属性引用的…

红黑树插入时的自平衡

红黑树插入时的自平衡 红黑树实质上是一棵自平衡的二叉查找树,引入带颜色的节点也是为了方便在进行插入或删除操作时,如果破坏了二叉查找树的平衡性能通过一系列变换保持平衡。 红黑树的性质 每个节点要么是红色,要么是黑色根节点必须是黑…

UWP学习记录

微软{X:Bind}、{Binding}资料网站 &#xff1a; https://msdn.microsoft.com/windows/uwp/xaml-platform/x-bind-markup-extension在View的ItemTemplate中绑定ViewModel的方法&#xff1a;1 <ItemsControl Name"XX" ItemsSource"{x:Bind VM.XXModels,ModeOne…

【Java】HashMap源码(1.7)

Life is not a ridiculous number of life, the meaning of life lies in life itself HashMap源码 散列集 数组和链表可以保持元素插入的顺序&#xff0c;对数组来说&#xff0c;他的优点是拥有连续的存储空间&#xff0c;因此可以使用元素下标快速访问&#xff0c;但缺点在…

画刷的使用

1.画刷的定义&#xff1a; HBRUSH hBrush; windows 自定义的画刷&#xff1a; WHITE_BRUSH、LTGRAY_BRUSH、GRAY_BRUSH、DKGRAY_BRUSH、BLACK_BRUSH和NULL_BRUSH &#xff08;也叫HOLLOW_BRUSH&#xff09; 获取方法如下&#xff1a; hBrush (HBRUSH) GetStockObject (GRAY_BR…

runtime官方文档

OC是一种面向对象的动态语言&#xff0c;作为初学者可能大多数人对面向对象这个概念理解的比较深&#xff0c;而对OC是动态语言这一特性了解的比较少。那么什么是动态语言&#xff1f;动态语言就是在运行时来执行静态语言的编译链接的工作。这就要求除了编译器之外还要有一种运…

【Java】synchronized关键字笔记

Java Synchronized 关键字 壹. Java并发编程存在的问题 1. 可见性问题 可见性问题是指一个线程不能立刻拿到另外一个线程对共享变量的修改的结果。 如&#xff1a; package Note.concurrency;public class Demo07 {private static boolean s true;public static void mai…

SQL Server-数据类型(七)

前言 前面几篇文章我们讲解了索引有关知识&#xff0c;这一节我们再继续我们下面内容讲解&#xff0c;简短的内容&#xff0c;深入的理解&#xff0c;Always to review the basics。 数据类型 SQL Server支持两种字符数据类型&#xff0c;一种是常规&#xff0c;另外一种则是Un…