qt 与 mfc 对比

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了qt 与 mfc 对比相关的知识,希望对你有一定的参考价值。

qt 风格 任何一个控件都是一个类。想在哪个窗口添加控件时声名一个控件变量就好。简单。 这里主要讲 mfc
mfc 风格 第一步通过编辑器在主窗口中添加控件时没有用。像你搞个控件上去运行虽然显示但没用。没有绑定
技术分享图片
第二步要想父窗口操控这个控件。必须把这个控件声名成他的变量。
技术分享图片
技术分享图片
id 就是你拖上去的控件 id 类型是控件继承的父类类型(clisetctrl)也就是控件类型
技术分享图片
确定之后会在 cpp 里有:
这表示初始化(不要自己再 mylistctrl my; / mylistctrl* my =new mylistctrl();)
技术分享图片
头文件里有:
技术分享图片
也就对应的一个限制就是你必须在父类中的OnInitDialog里写他的东西:
技术分享图片

还有一点
如果想让控件也是一个类时在编辑器中右键:
技术分享图片
这里有个坑 基类就那几个要用类向导:
技术分享图片
技术分享图片
全都自己写(心中一万个草泥马)
技术分享图片
又一个坑
在mylistctrl构造函数里写没用:(mfc 跟扯蛋没什么俩样)
技术分享图片
又一个坑
同时不能再声名 不能用指针声名 报错:
技术分享图片
技术分享图片

这里要讲的重点是用变量的形势把控件绑定起来可以不用把控件声名成类。但当你把控件生成类时(没绑定控件成变量)。然后在到父窗口中 new 出来(qt 思想)。在 mfc中没用。报错。
只能先绑定把控件变成父窗口成员变量。同时也不用你初始化了绑定就是初始化。
切记控件中的构造函数写的代码没用。(构造函数都不调)
技术分享图片

!!!!!!!!!感受能不用 mfc 就不用。。。。

以上是关于qt 与 mfc 对比的主要内容,如果未能解决你的问题,请参考以下文章

定制炫彩界面:duilib与MFC 的对比

QT跟MFC的区别?QT可以调用MFC的东西吗?

QT跟MFC的区别?QT可以调用MFC的东西吗?

Qt简介

使用 C++、Qt 进行亮度、对比度、伽玛调整

基于Qt设计的人脸识别门禁系统(录入识别对比删除)