做windows界面,用QT还是MFC

做windows界面,用QT还是MFC,第1张

使用Qt吧,前提是在这两者下进行选择。既然提到了Qt和MFC,我想题主肯定是一个C++的开发者。其实,在我看来,Windows下开发界面程序,还有很多其他的选择。下面我就连同Qt、MFC一起来介绍一下几种常用的界面开发框架。

其实选什么学习还得根据自身的需求。语言不分好坏在于人。精通才是正道。当下window下流行的编程语言,有vb,mfc,c sharp,。如果没啥限制,建议第三个吧,简单粗暴上手快,开发效率也高。如果公司或硬件限制必须用mfc或其他语言,那学就是。都是微软的产品,我开发项目都用过,知识通用。至于qt封装是全,相对微软自家的产品,用的人少些。问题多靠自己解决

具体选择QT还是MFC,这要根据题主的需求来决定。如果你入职一家公司,做的是老项目的维护,而原有项目是采用MFC来开发,那么当然,你没得选,只能老老实实的继续MFC,虽然这玩意写起来真的很虐心。如果是一个全新的项目,那么还是首选Qt。

下面根据自己的认识,推荐几款Windows下开发界面开发常用技术。

1)Qt

号称可以跨平台,语法结构简单清晰。面向对象的特性体现的比MFC明显。代码写起来比较优雅,也就是说上手会快一点,最新版本支持的特性QML,可以让我们用JS,CSS来绘制客户端界面,写起来效率也是蛮高的。缺点就是文档可能没有MFC那么齐全,基本只有官方的官网和Demo,而且发布包体积会比较大。

2)MFC

全称Microsoft Foundation Classes(微软基础类库),可以算的上是上古产品了吧,目前除了维护老项目,应该很少有团队使用MFC来开发了吧。基本上MFC == “没饭吃”。建议如果你是初学者,界面开发还是不要选择MFC了。它唯一的好处就是微软的MSDN文档比较齐全,相关论坛和那种问答的资源要多很多,一般初学者遇到的问题都可以看到前辈们的解决方法。不过目前它已经被其亲爹微软抛弃了。

3)Duilib

目前已开源,是一款强大的界面开发工具,可以将用户界面和处理逻辑彻底分离,极大地提高用户界面的开发效率。唯一不足的是原开发者已经停止维护,很多都是个人在维护,出了问题的话,只能自己去摸索,Debug。下面是一款个人使用Duilib开发的迅雷播放器界面效果。

最后附上一些基于Duilib开发的软件不完全列表(欢迎大家补充指正):

百度: PPS 爱奇艺 百度杀毒 百度卫士 91助手

腾讯: 微信 企业微信

阿里: 钉钉 支付宝安全控件 PP助手

书生云: 书生企业云盘

微软: 微软壁纸

网易: 易信 云音乐 荒野行动PC版

华为: 华为网盘

金山: 金山快盘

京东: 咚咚

cctv: cbox

酷我: 酷我音乐盒

蘑菇街: TeamTalk

火绒: 火绒安全软件

盘古: 盘古越狱工具

顺网: 网维大师 91y

网狐: 网狐经典版

墨迹风云: 墨迹天气

zoomcloud: Zoom 视频会议

搜狗: 搜狗手机助手

沃通: 沃通代码签名工具

驱动人生: 驱动人生 人生日历

维棠: 维棠

深圳市北斗智研 科技 : 智能办公助手 ERP管理系统

4)Electron

这玩意应该是这几年才火起来的吧,宣城自己可以通过使用JavaScript、HTML和CSS构建 跨平台 的桌面应用程序,让人们感觉 JS 真的有一统天下的趋势(Web、移动端、PC客户端)。开发效率真心的高,不过貌似商用上还不是特别的多,典型的成功案例目前知道的有VSCode,Atom。

两者之间二选一的话肯定选Qt了,如果再考虑开发效率与运行效率的话,可以在Python平台上使用Qt的Python绑定库PyQt,再配合C++,主体用Python语言,界面部分用PyQt搭建,核心算法部分用C++封装成动态库DLL文件,在Python里去调用。这样是一个不错的方案,Python部分缩短了开发时间,C++部分保证了运行速度,只是前提是,你要会用C++写DLL,在Python里会调用DLL。

作为做了近2两年windows application的人来说,我直接说Qt!首先我主要做pc和下位机通信的app,如串口、tcpip、总线类等。选qt理由如下:仅从我的经历来讲

1、Qt开发效率高。我第一个项目前几个项目用的MFC,平均时长3个月,一个软件80%的时间都放在界面上去了。然后后面开始使用Qt,一个月能做好几个app没压力,界面布局很方便,不用像MFC去一个一个控件拖动。

2、Qt库简单易懂。个人的感觉就是MFC与win api联系太大了,你要玩转MFC,必须要把windowsapi相关知识搞得明明白白的。而Qt库把每一个功能都封装得很好,很容易去使用,不需要没事就百度怎么用。

3、MFC已经在淘汰边缘了。到如今Qt还在不断更新,我目前使用的是Qt59。在平时招聘的时候,也很少看到有公司让你专职做MFC,要么Qt,要么C#。

4、Qt跨平台。我当初换Qt的一个原因还是,我以后如果不做windows了可以换linux上位机,Qt可以做到很好的跨平台,而MFC不行。

两者没有好坏之分,需要看应用场景。如果是界面要求不高,稳定性和效率要求高的工业软件,MFC是最好的选择。如果是界面要求美观,跨平台使用,QT是最好的选择。但是要注意的是QT企业用是需要授权费的。另外,windows上的界面还有其他选择wpf,direct ui等。这里着重提一下direct ui,目前可以找到比较好的就是duilib这个界面库,开源稳定易用高效。关注我一起探讨呀!

我们来简单比较一下QT和MFC。

1开发速度

整体来说可能MFC会快捷一些,因为windows平台的开发工具大多很智能,因为立足于windows的开发人群很广,从菜鸟到专业人士,但是QT由于基于Linux,可用的开发工具不多,大都比较专业,多是第三方产品,而且集成度不大,第三方库也没有MFC得多,从这一点MFC略胜一筹,但是QT自从被Nokia收购后,官方发布了跨平台集成开发环境QTCreator,所以之后走向就不好说了,个人总体感觉QT Creator和VSnet差距比较大,还需改进。

但是从库本身来说QT集成的功能较MFC庞大,而且使用的封装技术信号和槽也是比较受到赞许的,比如QT Script为QT提供嵌入式脚本,QT界面库支持CSS,所以QT做出来的界面比MFC要好,而且比较容易,MFC就需要借助第三方库了。

因为MFC是浅层封装(最新的2008 sp1加入了BCG的高级界面库,可能有所改善)windows SDK,以降低使用windows SDK引起的开发效率的降低,和开发难度的增加。

所以QT库是比MFC优秀的,两个库都经受了时间的考验,稳定性都很高,Bug几乎没有。

2运行效率

MFC由于其浅层封装的特点,所以运行效率是比较高的,加上vc对windows的针对性优化,整体性能是比较高的,但是如果加入第三方库就不敢保证了。

QT因为库比较庞大,封装层次较深,所以运行效率较MFC为低,但是在现在的机器配置下,C#大家都不介意了,这些会引起人们的介意吗?

3学习难度

QT的封装哲学比较明晰,和系统隔离得比较好,门槛不高;

MFC较难精通,因为深入开发之后SDK还是要了解的。

必须Qt啊,跨平台,还有鬼知道项目以后要不要跑Linux和嵌入式设备上!界面简单的话,用qml开发,可以直接移植到嵌入式设备上去,还可以把编写逻辑的程序员和界面设计师分离出来!mfc现在微软都放弃更新维护了,mfc开发界面很麻烦的,除非老项目要维护,不然不建议再用mfc做新项目了!Qt的信号与槽很赞,比mfc的回调函数好用多了!

mfc底层太复杂了,但资料多,开源代码多。

qt底层可能好点,但资料和整个开发环境肯定不如vs系列。

微软精力不在mfc上面了,而qt则要在竞争中求存活。

用什么看开发习惯,熟悉哪个用哪个。有困难找我

①使用Windows+C组合键,调出Windows 81 *** 作系统 的设置菜单→设置。

②在d出的界面中点选→更改电脑设置

③电脑设置→更新和恢复

④这里特别需要注意:

Windows 8 *** 作系统的菜单和Windows 81 系统的菜单在这里会有所不同的。

更改电脑设置→常规→高级启动(立即重启)→疑难解答→高级选项→启动设置→重新启动,然后等系统自己加载,就可以进入高级启动菜单界面了,看到“禁用驱动程序强制签名”,选择它就行。禁用即可成功了。

参考资料  >

1、游戏过程中出现异常黑屏

①尝试关闭不必要的其他手机后台程序;

②尝试清理手机内存空间;

③尝试杀掉游戏进程,并重新进入游戏,在设置中将画质设置为“基础”;

④当上述检查无效时,请在论坛向官方进行反馈。

2、游戏登陆失败、闪退

①检查是否由于使用非法软件导致帐号被冻结

②检查网络环境是否不稳定

③检查是否使用了系统自身的安全设置或防护软件的安全设置,阻止了登陆网络连接的建立

④检查是否使用了正确的最新游戏版本apk

⑤当上述检查无效时,请在论坛向官方进行反馈

3、游戏安装失败

①检查手机剩余存储空间是否小于150MB

②检查手机的内存容量是否低于350MB

③检查是否从正确的url或二维码获取了有效的游戏客户端apk

④检查是否使用了系统自身的安全设置或防护软件,阻止了第三方应用的安装过程

⑤取消当前安装,再次进行安装看是否能够正确安装

⑥当上述检查无效时,请在论坛想官方进行反馈

请给我一个简单的P图网站教程,谢谢

下面是非主流

收集常 用 作 图 软 件 下 载 :qt263/readphptid=35&u=15253

看不懂教程先了解PS学习PS的步骤 :qt263/readphptid=36&u=15253

非主流PS教程基础知识字体的下载和安装 :qt263/readphptid=70&u=15253

非主流PS教程基础知识怎样安装笔刷 :qt263/readphptid=69&u=15253

非主流PS教程基础知识利用抽丝效果做签名图 :qt263/readphptid=78&u=15253

非主流PS教程基础知识PS仿制图章工具的使用 :qt263/readphptid=76&u=15253

非主流PS教程基础知识简单溶图方法 :qt263/readphptid=77&u=15253

非主流PS教程基础知识高光素材的使用 :qt263/readphptid=75&u=15253

非主流PS教程第一课美白教程 :qt263/readphptid=8&u=15253

非主流PS教程第二课磨皮教程 :qt263/readphptid=9&u=15253

非主流PS教程第三课简单的瘦脸方法-液化 :qt263/readphptid=182&u=15253

非主流PS教程第四课漂亮的非主流红脸蛋 :qt263/readphptid=12&u=15253

非主流PS教程第五课非主流照片之眼睫毛制作方法 :qt263/readphptid=10&u=15253

非主流PS教程第六课面部油光一扫光 :qt263/readphptid=13&u=15253

非主流PS教程第七课眼睛改色处理 :qt263/readphptid=14&u=15253

非主流PS教程第八课简单人物化妆 :qt263/readphptid=15&u=15253

非主流PS教程第九课唇彩制作 :qt263/readphptid=16&u=15253

非主流PS教程第十课烟熏妆 :qt263/readphptid=17&u=15253

非主流PS教程第十一课添加酒窝 :qt263/readphptid=18&u=15253

非主流PS教程第十二课非主流头发颜色 :qt263/readphptid=19&u=15253

非主流PS教程第十三课给MM打造眼影和唇彩 :qt263/readphptid=20&u=15253

非主流PS教程第十四课漂亮简单的边框 :qt263/readphptid=22&u=15253

非主流PS教程第十五课非主流照片制作教程之大眼睛MM :qt263/readphptid=47&u=15253

非主流PS教程第十六课彩色抽丝 :qt263/readphptid=23&u=15253

非主流PS教程第十七课漂亮的马赛克效果 :qt263/readphptid=24&u=15253

非主流PS教程第十八课轻松让你的照片成为焦点 :qt263/readphptid=26&u=15253

非主流PS教程第十九课彩妆笔刷的应用教程给自己化个漂亮的彩妆 :qt263/readphptid=21&u=15253

非主流PS教程第二十课海报非主流 :qt263/readphptid=25&u=15253

非主流PS教程第二十一课拼贴效果教程 :qt263/readphptid=27&u=15253

非主流PS教程第二十二课一种漂亮的艺术效果 :qt263/readphptid=40&u=15253

非主流PS教程视频Photoshop CS2中文版从头学(很好的视频教程) :qt263/readphptid=267&u=15253

非主流PS教程简单教程Komi效果制作 :qt263/readphptid=192&u=15253

非主流PS教程简单教程简单非主流效果 :qt263/readphptid=193&u=15253

非主流PS教程店长教程非主流效果之粉白水嫩 :qt263/readphptid=33&u=15253

非主流PS教程店长教程非主流效果之单色调 :qt263/readphptid=32&u=15253

非主流PS教程店长教程Vonai图图范例+教程 :qt263/readphptid=41&u=15253

非主流PS教程店长教程现在最流行的风格-Xyan制作 :qt263/readphptid=43&u=15253

非主流PS教程店长教程艺术化效果 :qt263/readphptid=3&u=15253

非主流照片处理-让你的照片与众不同 :qt263/readphptid=770&u=15253

黑眼圈去除 :qt263/readphptid=1072&u=15253

非主流卷发 :qt263/readphptid=932&u=15253

个性色彩做法 :qt263/readphptid=614&u=15253

超酷影片风格画面场景 :qt263/readphptid=980&u=15253

微**调调色 :qt263/readphptid=133&u=15253

一种非主流效果 :qt263/readphptid=775&u=15253

非主流之打造凝重淡彩效果 :qt263/readphptid=971&u=15253

『人物美白、加亮』简单实用 :qt263/readphptid=652&u=15253

制作仿古人物效果 :qt263/readphptid=187&u=15253

超简单ps蕾丝边框教程 :qt263/readphptid=97&u=15253

PUNK风格制作 :qt263/readphptid=890&u=15253

4步快速打造梦幻效果 :qt263/readphptid=898&u=15253

ps菜鸟教程 :qt263/readphptid=489&u=15253

简单给黑白照片上色 :qt263/readphptid=337&u=15253

PS暗调颓废 :qt263/readphptid=822&u=15253

吊坠制作方法 :qt263/readphptid=755&u=15253

[ps基础教程]基础教程之非主流单色调风格 :qt263/readphptid=5958&u=15253

ps字体教程PS签名图加字体字效 :qt263/readphptid=5871&u=15253

ps非主流照片制作教程:PS羽化溶图 :qt263/readphptid=5677&u=15253

PS素材类:

非主流照片背景素材和非主流背景素材 :qt263/readphptid=5664&u=15253

非主流ps彩妆笔刷 :qt263/readphptid=5658&u=15253

[ps动漫素材]动漫签名PS素材 :qt263/readphptid=5640&u=15253

[ps动漫素材]动漫签名PS素材(二) :qt263/readphptid=5642&u=15253

[ps动漫素材]动漫签名PS素材(三) :qt263/readphptid=5646&u=15253

[ps动漫素材]动漫签名PS素材(四) :qt263/readphptid=5653&u=15253

咖喱鸡块土豆的做法请给我一个简单的方法谢谢!

先炖鸡块,再加土豆,最后是咖喱粉

请给我一个网站好么 谢谢

你  好

璜网站有;    ®    ®  e   ④   ⑥   C    〇 m 

鳞茎为地下变态茎的一种。

变态茎非常短缩,呈盘状,其上着生肥厚多肉的鳞叶,内贮藏极为丰富的营养物质和水分

能适应干旱炎热的环境条件。

鳞茎也具顶芽和腋芽,可从其上发育出地上的花茎,开花结实。从鳞茎盘的下部可生出不

我想下载一个鬼泣3,请给我一个安装简单的网站!

游民星空,下载完成解压就可以玩了

给我一个简单的魔术

:tudou/programs/view/xUVA0tvPPEI看一下吧,有很多!

给我一个简单的成语

词约指明:言词简洁,旨意明确。

金辉玉洁:形容文辞斑斓简洁。

言简意少:简:简练。语言简洁,内容贫乏。

言无枝叶:枝叶:比喻琐细的言辞。形容言词文字简洁,没有枝蔓的言词。

沾泥带水:比喻说话、写文章不简洁或办事不干脆。

请哪位给我一个简单的网站,我要模仿网站的静态页面

恩锏惧害鍦板浘

给我一个简单的网页作品呗

你可以自己做呀,简单的就是不需要加脚本在里面的,只要建立一个自己的小站点,里面两个文件夹,一个放,一个房文件,就行了呀。剩下的就是你的布局,怎么好看怎么放呗,你可以借鉴一下各大网站的布局形式呀。我是平面设计的,对网页了解不深,只能帮助你这么多,你要问那个我或许可以帮你。

谁能给我一个简单的VB托盘程序代码?谢谢

使用API函数,Shell_NotifyIcon

我以前写了个程序,代码贴了你看下把

Private Declare Function Shell_NotifyIcon Lib "shell32dll" (ByVal dwMessage As Long, lpData As NOTIFYICONDATA) As Long

Private Type NOTIFYICONDATA

cbsize As Long

hwnd As Long

uid As Long

uflag As Long

ucallbackmessage As Long

hicon As Long

sztip As String 64

End Type

Const ADD_ICON = 0

Const MODIFY_ICON = 1

Const DELETE_ICON = 2

Const ICON_MESSAGE = 1

Const ICON_ICON = 2

Const ICON_TIP = 4

Dim IconName As String

Dim m_intret As Integer

Dim m_icondata As NOTIFYICONDATA

Private Sub initiconstruct(hwnd As Long, theicon As Long, stip As String, _

icondata As NOTIFYICONDATA)

icondatacbsize = Len(icondata)

icondatahwnd = hwnd

icondatauid = vbNull

icondatauflag = ICON_MESSAGE Or ICON_ICON Or ICON_TIP

icondataucallbackmessage = vbNull

icondatahicon = theicon

icondatasztip = stip

End Sub

Private Sub Command1_Click()

MeIcon = LoadPicture(IconName)

intret = Shell_NotifyIcon(DELETE_ICON, m_icondata)

initiconstruct Mehwnd, MeIcon, _

"这是(kikikaki)建立的系统托盘图标!" & vbNullChar, m_icondata

intret = Shell_NotifyIcon(ADD_ICON, m_icondata)

End Sub

Private Sub Command2_Click()

CmDigFilter = "图标文件(ico)|ico"

CmDigShowOpen

If Not CmDigFileName = "" Then

IconName = CmDigFileName

Picture1Picture = LoadPicture(IconName)

End If

End Sub

Private Sub Form_Load()

IconName = AppPath & "\1ico"

Picture1Picture = LoadPicture(IconName)

End Sub

Private Sub Form_Unload(Cancel As Integer)

intret = Shell_NotifyIcon(DELETE_ICON, m_icondata)

End Sub

请给我一个股票K线图视频教程网站?

你到百度上自己去搜索一下股票知识那里面对股票方面的知识是五花八门应有尽有,你可以根据不同的需要进行学习了,这样比我单纯的给你一个链接要好的多呀,我是给你以渔,不给你以鱼。

数字签名(又称公钥数字签名、电子签章)是一种类似写在纸上的普通的物理签名,但是使用了公钥加密领域的技术实现,用于鉴别数字信息的方法。一套数字签名通常定义两种互补的运算,一个用于签名,另一个用于验证。

数字签名,就是只有信息的发送者才能产生的别人无法伪造的一段数字串,这段数字串同时也是对信息的发送者发送信息真实性的一个有效证明。

数字签名是非对称密钥加密技术与数字摘要技术的应用。

“发送报文时,发送方用一个哈希函数从报文文本中生成报文摘要,然后用自己的私人密钥对这个摘要进行加密,这个加密后的摘要将作为报文的数字签名和报文一起发送给接收方,接收方首先用与发送方一样的哈希函数从接收到的原始报文中计算出报文摘要,接着再用发送方的公用密钥来对报文附加的数字签名进行解密,如果这两个摘要相同、那么接收方就能确认该数字签名是发送方的。

数字签名有两种功效:一是能确定消息确实是由发送方签名并发出来的,因为别人假冒不了发送方的签名。二是数字签名能确定消息的完整性。因为数字签名的特点是它代表了文件的特征,文件如果发生改变,数字摘要的值也将发生变化。不同的文件将得到不同的数字摘要。 一次数字签名涉及到一个哈希函数、发送者的公钥、发送者的私钥。”

数字签名:

发送方用自己的密钥对报文X进行Encrypt(编码)运算,生成不可读取的密文Dsk,然后将Dsk传送给接收方,接收方为了核实签名,用发送方的公用密钥进行Decrypt(解码)运算,还原报文。

详见百度百科:>

Qt 程序需要在main()函数创建一个QCoreApplication对象,然后调用它的exec()函数。这个函数就是开始 Qt 的事件循环。在执行

exec()函数之后,程序将进入事件循环来监听应用程序的事件。当事件发生时,Qt 将创建一个事件对象。Qt 中所有事件类都继承于

QEvent。在事件对象创建完毕后,Qt 将这个事件对象传递给QObject的event()函数。event()函数并不直接处理事件,而是将这些事件对

女生在qq个性签名上写不感慨,不作作,该怎样就怎样是什么意思

花开花落,物是人非,人生总有太多离别与伤感,每一次的离别都伴随着阵痛,这种阵痛叫做成长!总是想着该怎么做,如何去做,面对现实,那么苍白无力,在妥协中强大自我,这不是懦弱,这是成长!人生不如意事十之八九,抱怨无用,总该面对,学会对已得到的东西感到知足,野心勃勃地去争取更多,也不必强求,成长总是在舍与得之间进行!不管现实如何,坚持内心的本真,在人生道路上不迷失自我,丢掉自我,记着那些淳朴的东西,世界本是美好,我们可以发现美!成长,一直在努力

qq个性签名该怎样储存

点选QQ签名处修改好自己喜欢的签名后,点选任意其他位置就可以完好的储存下来了。

一个男生在QQ个性签名上写那样的思念 才叫爱吧!是什么意思啊?

他有深爱的人

前女友在QQ个性签名上写 太多"如果"这四个字 是什么意思

1后悔、怀念当初

2年轻人的乱哼哼,无实意,大可无视。

Ps- 其实很多时候是因为自己心里有情结,才会觉得别人话外有音,也许这次你要自己来感受。

QQ个性签名都用数字是什么意思

去这里找,什么样的签名和网名都有的,还可以真笔字转换 zhenbizi

怎样在qq个性签名上画画

楼主说的是特殊符号吧 :qdoutang/QQgexingqianming/ 和 :qqzbd/article/qqgexing/qqgexingqianming/ 很多个性签名的

qq个性签名怎样打?

在最上面的自己的头像上点一下 会出来一个框框 里面有个性签名 打完后确定

怎么在QQ个性签名上写韩文

如何在QQ聊天时输入韩语 输入技巧又是什么

1 示例

r + 空格 = ㄱ

rk + 空格 = 가

rks + 空格 = 간

rkqt + 空格 = 값

最近一些会员反映不会用QQ韩语输入法 在这里再次做一个说明如何安装, 如何使用的问题

2 安装

下载QQ表情外挂, 然后在聊天视窗点选表情, 然后再点"汇入", 找到下载的eip档案就可以 (请参考上面的截图)

下载地址: :koreaxin/downloads/downloadsaspID=96

3 输入方法

输入的方法和普通的韩语输入一样 即rk就是[가], 但有一点要特别说明的是, 输入一个字后需要按一次空格, 这样才能显示出来对应的韩国文字 QQ输入并没有智慧控制, 不能连续输入多个字, 每个字输入后都要有空格 只要掌握了这一点, 那么还是可以连续输入的, 无非是多了一个空格罢了간사합니다!

你爱怎样就怎样 她把这个当个性签名是什么意思?

我要吊死你~! 这样的话,你不能对我说,还有你也是~! 她不是这样对我说的~!

付丛丛个性签名该怎样写

一笑天下醉,回眸尽落殇,丛丛人海无熟影,落雨红尘无破晓

以上就是关于做windows界面,用QT还是MFC全部的内容,包括:做windows界面,用QT还是MFC、win8怎样开启“禁用驱动程序强制签名”、手机版QT老闪退怎么办等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10089195.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存