简述windows应用程序设计的基本步骤?

简述windows应用程序设计的基本步骤?,第1张

计算机程序设计基本步骤:\x0d\x0a(1)创建界面。程序的界面必须在一开始就设计好,否则在后期将很难进行修改。因此,是使用Windows提供的默认皮肤(见图1)还是自己编写皮肤,需要最早进行构思。注意:如果是一个整体的软件,需要先进行软件功能设置。\x0d\x0a(2)设置属性。这个是通用的方法,作用和“创建程序界面”差不多,基本方法就是“属性窗口、代码(对象名称.属性名称=属性值)”。\x0d\x0a(3)编写代码。完成程序理论设计之后,就开始编写程序代码了,具体代码与程序本身有关。\x0d\x0a(4)保存工程。设计完毕之后首先需要把工程保存下来,最好是每一次修改都保存源工程和修改后的工程,以便日后在遇到错误时快速恢复。\x0d\x0a(嫌烂5)测试程序。完成修改之后要及时测罩者橘试,发现已有的问题物团,创建了可执行程序之后就很难再修改了。\x0d\x0a(6)创建可执行程序(脚本)。完成工程之后就可以创建出一个可执行程序(或脚本)了。此时计算机程序已经设计完毕。

新手做Windows应用程序开发,这里推荐用C#来进行开发。C#对控件有很好的封装,且开发环境是可视化图形界面,前台是类似于PPT直接拖拽控件到程序界面,然后再在后台写逻辑就可以,极大的简化了开发流程,大大降低了开发门槛,所以十分适合新手入门。

这里我就新手如何用C#去做window应用程序开发的一个过程来详细阐述一下:

IDE

个人建议微软的编程语言最好是安装VisualStudio。

.NET

库一般电脑装系统都是装好的,然后你安装VisualStudio的时候会根据你得IDE版本可能会安装更新的版本,这里需要注意一下,在开发的时候若是选择了高版本的

.NET

然后程序放在低版本可能会运行不了。个人建议用.NET3.5。

新建项目

有了IDE之后就可以开始开发程序了,我们打开VisualStudio,如果是第一次打开可能需要半个小时左右进行初始化。打开后新建项目:

如上图红色标记处可以新建项目,也可以在菜单栏文件处新建项目:

新建项目的时候注意选择:VisualC#然后选择Windows,再在右边选择Windows窗体应用程序:

改好你的项目名,点击右下角确认,这样你就已经开发好了自己的第一个window桌面程序了,这个程序是可以运行的,知识他暂时没有任何的界面和功能,他能运行且能显示界面这都是

.NET

在背后默默的给你封装好的,他帮你做了很多工作,下面你可以添加自己需要的空间和后台逻辑。

编写自己的逻辑

点击IDE左边的工具箱,然运贺仔后点击右边的小三角,选择停靠

这样所有的控件都在左边,你只需要弄清楚每个控件是干嘛的就可以了。这里我讲一下最常用的几个吧:

Button:按钮,可以点击的

Label:标签,可以显示文字

TextBox:输入框

以上三个是用的最多的,我们只需要将需要的控件点击选中并按住鼠标拖动至我们的界面上就可以了:然后在右下角你可以针对每个控件去设置他的属性和事件绑定(button的点击事件可以直接双击button控件,IDE会直接跳转至该事件的代码编写区):

前台页面设置好后旁汪,我们可以按“F7”进入后台代码页进行逻辑编写。我这里就演示一下在输入框中输入字符并且点击按钮后d出来我输入的内容的提示:

其中textbox1和button1都是系统自动给TextBox和Button空间取的名字(ID)这个在你控件多了的时候他是不能重复的,你可以在属性修改项中修改对应控件Name属性。

我们看一下运行结果:

我再输入框中输入“我爱你”点击确定后d框提示“我爱你”,简单的逻辑已经实现。一个简单的window应用程序已经开发OK,你可以将这个程序(

.exe

文件,在debug文件下)给到别人去使用是没有问题的。

当然,我在这里讲的只是C#开发Windows应用程序的简单过程,要想做出功能丰富强大的Windows应用程序还需要去了解各空控件的功能和用法,还有后台逻辑怎么去编写,数据库怎么去链接,这些都是很深很广的知识,需要你在不断的学习和使用中去提升。

希望我的回答对您有帮助,谢谢~

Windows桌面应用程序开发,首选当然是C#了,不管是开发效率还是平台兼容性来说,都是最好的,其次可以考虑Delphi开发工具,学习成本不高,效率也不错,最后实在没有编程基础的话,可以考虑使用易语言,纯粹中文编程,容易入门也易掌握,下面我分别简单介绍一下,感兴趣的朋友可以尝试一下:

01

C#

这是微软自主设计研发的拍袜一款编程语言,目前在Windows平台下有着广泛的使用率和普及率,不管是桌面开发还是动态网页开发,C#无疑是最合适也是效率最高的,只需简单拖拽控件、编辑属性,就可快速创建一个应用,支持各种主流数据库开发,只要你有一定的编程基础,学习来说,非常容易,很好入门,但在跨平台性方面有一些欠缺:

02

Delphi

这是Windows平台下一个非常著名的开发工具,在早期的Windows桌面开发中,Delphi一直占据着非常重要的位置,对于初学者使用来说,不需要掌握太多的编程基础,只需简单拖拽控件,设计属性,就可快速创建一个桌面应用,不管是开发效率,还是编译效率都非常高,而且支持数据库开发,不过随着C#的兴起,Delphi的使用范围逐渐缩小,目前主要集中在一些中小型个人应用和企业的老项目上:

03

易语言

使用易语言开发桌面应用程序,应该是下下之策了,这种方法适合于没有任何编程基础,而又对英文不熟悉的开发人员,纯粹基于中文的编程方式和思想,对于国人来说,非常容易接受和学习,可以快速开发一个桌面应用,但在目前大的环境和主流思想下,易语言的应用范围很局限,很少被企业采用,而且本身属于付费产品,难以推广:

目前,就分享这3种适合新手的Windows应用程序开发语言或工具吧,对于新手学习使用来说,完全够用了,比较流行,也是主流的是C#,只要你有一定的编程基础,熟悉一下使用过程,很快就能掌握的,当然,考虑到跨平台,可能Qt,Electron等更合适,网上也有相关资料和教程,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

使用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还在不断更新,我目前使用的是Qt5.9。在平时招聘的时候,也很少看到有公司让你专职做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和VS.net差距比较大,还需改进。

但是从库本身来说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则要在竞争中求存活。

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


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

原文地址: http://outofmemory.cn/yw/12552121.html

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

发表评论

登录后才能评论

评论列表(0条)

保存