windows程序设计心得体会

windows程序设计心得体会,第1张

windows程序设计也就是基于微软的windows *** 作系统而进行的程序设计。

(这是一句废话,但不要小看废话阿!真理往往就在其中)你有没有想过,为

什么是基于windows *** 作系统呢?下面就来解答:windows应用程序需要利用

由windows *** 作系统开放出来公用用程序使用的应用程序接口“滑迹迹API”(说道

重点了)windows提供了上千种API函数供应用程序使用。

上面说了,windows程序其实就是在非逻辑的使用这些API函数,我这里

提到了“非逻辑”三个字(这是本人的看法),这正是windows程序的精髓,这

是一切windows程序运行的方式(可能严重了点)。非逻辑也就是指程序不是

按照事先安排好的顺序来进行的,是根据用户的不同 *** 作或者是其他某些原因

一步一步进行的。这种运行方式就叫做“消息驱动”

简单一点来解释一下何谓消息驱动,就是指应用程序始终在等待(等待

一词也许不他恰当,但可能好理解),它绝对不是在等待谁会给它爱(本人

爱开玩笑请别见怪!)它是在等待用户或者是系统的消息(也就是命令),

当接到消息后呢,它会把消息通过DispatchMessage(&msg)传递给窗口函数

(窗口函数就是一个应用程序的核心)窗口函数就会对照事先由程序编写好

的消息对照表调用对应的方法来处理消息。这样就完成一个消息的处理,接

下来准备处理下一个消息。

你也许会问那不是无休止的运行下去了吗?当然不会,下面我用程序

本身来说明这个问题:

//消息循环,通过此处来不断的取得消息。

while(GetMessage(&msg,NULL,0,0))

//消息进行一些转换

TranslateMessage(&msg)

/州缺/把消息传向窗口函数

DispatchMessage(&msg)

}

return msg.wParam

就是这样了:当我们点击窗口右上角的小叉或者点击退出按钮时,

windows就会自动在我们的消息队列中加入一条消息“WM_DESTROY”,这

时呢窗口程序有这么一部分:

switch(message)

{

//其它代码

.........

//

case WM_DESTROY:

PostQuitMessage(0)

return 0

相信一般的朋友都会明白吧,它的作用的就是在接收到WM_DESTROY时呢,

通过调用PostQuitMessage(0)让windows在消息列表中呢在加入另一条消

息“WM_QUIT".

当GetMessage函数抓取到WM_QUIT时返回0,其余返回非0值,懂了吧,

这下可以退出消息循环了。

这就是windows程序设计信并最基础的部分了,可以说是核心。

该说一些心得了,我认为学习windows程序设计不要基于某一部分,

而要把握住其大局,要有整体观,有了整体观对windows程序设计有了

一定的了解后在对其各部分下功夫(这下可不是照顾全局了,要静下

心来细心的咀嚼,要不然你会咽到的。)这样才不会走火入魔(嘿嘿)

就写到这吧,以后等我水平高些了再写(还早着呢,嘿嘿),希望

我没白费功夫,也希望对你有用,88。

转自百度百科

--------------------------------

VBA

Visual Basic for Applications(VBA)是一种Visual Basic的一种宏语言,主要能用来扩展Windows的应用程式功能,特别是Microsoft Office软件。也可说是一种应用程式视觉化的Basic Script。1994年发行的Excel 5.0版本中,即具备了VBA的宏功能。

VBA是什么

直到90年代早期,使应用程序自动化还是充满挑战性的领域.对每个需要自动化的应用程序,人们不得不学习一种不同的自动化语言.例如:可以用EXCEL的宏语言来使EXCEL自动化,使用WORD BASIC使WORD自动化,等等.微软决定让它开发出来的应用程序共享一种通用的自动化语言--------Visual Basic For Application(VBA),可以认为VBA是非常流行的应用程序开发语言VISUAL BASIC 的子集.实际上VBA是寄生于VB应用程序的版本. VBA6

VBA和VB的区别包括如下几个方面:

1. VB是设计用于创建标准的应用程序,而VBA是使已有的应用程序(EXCEL等)自动化 2. VB具有自己的开发环境,而VBA必须寄生于已有的应用程序. 3. 要运行VB开发的应用程序,用户不必安装VB,因为VB开发出的应用程序是可执行文件(*.EXE),而VBA开发的程序必须依赖于它的父应用程序,例如EXCEL. 尽管存在这些不同,VBA和VB在结构上仍然十分相似.事尘卖尘实上,如果你已经了解了VB,会发现学习VBA非常快.相应的,学完VBA会给学习VB打下坚实的基础.而且,当学会在EXCEL中用VBA创建解决方案后,即已具备在WORD ACCESS OUTLOOK FOXPRO PROWERPOINT 中用VBA创建解决方案的大部分知识. * VBA一个关键特征是你所学的知识在微软的一些产品中可以相互转化. * VBA可以称作EXCEL的“遥控器”. VBA究竟是什么?更确切地讲,它是一种自动化语言,它可以使常用的程序自动化,可以创建自定义的解决方案. 此外,如果你愿意,还可以将EXCEL用做开发平台实现应用程序. Office取得巨大成功的一个重要原因就派禅是VBA,使用VBA可以完成很多事情,基于Excel、Word的VBA小程序不计其数。 VBA程序员很多是业余程序员,正因为业余,解决的却是工作中需要解决的问题;所以,VBA程序大多都是只是在部门内部或个人使用的小工具。 集成了VBA的其他应用程序也很多,但真正能为程序增色的不多。 大多数人看到了VBA可以自动化一个程序,可配渣以扩展已有程序,但没有看到在Office中,VBA代码可以是录制的,而不是写出来的,带来的好处是,学习曲线变得非常缓。如果没有宏录制功能,要熟悉某个Office组件的对象模型,绝非一日之功。 以ArcGIS为例,ArcGIS扩展必须使用ArcObject,不管是使用VBA也罢,VB也罢,还是C++也罢。但同时,ArcObject的学习不是一天两天可以搞定,对于业余程序员,要使用VBA来扩展ArcGIS,几乎没有可能;专业程序员又不屑使用VBA;而对于公司,如果要基于ArcObject来扩展ArcGIS,选择VBA意味着源码的保护很困难。所以,ArcGIS的VBA就如同鸡肋。 不过,学习AO的时候,使用VBA比使用其他语言要容易一些,写几行代码,然后直接运行测试结果,这种交互式的学习应该是最好的学习方法。 ArcGIS以及AO与Office相比,还有一个很大的差别,就是ArcGIS缺乏中等粒度的对象,例如Word和Excel的Range对象。对于Office开发,可以在对底层小粒度对象一无所知的状况下做很多事情,这就是抽象的力量。常人可以处理的复杂度是有限的,面对数十个对象和几百个对象,后者需要付出的努力不是10倍,而是数十倍或更多,因为在学习过程中,必须可以把这些对象在大脑中很好的组织,以控制其复杂度。

Visual Basic for Applications(简称VBA)是新一代标准宏语言,是基于Visual Basic for Windows 发展而来的。它与传统的宏语言不同,传统的宏语言不具有高级语言的特征,没有面向对象的程序设计概念和方法。而VBA 提供了面向对象的程序设计方法,提供了相当完整的程序设计语言。VBA 易于学习掌握,可以使用宏记录器记录用户的各种 *** 作并将其转换为VBA 程序代码。这样用户可以容易地将日常工作转换为VBA 程序代码,使工作自动化。因此,对于在工作中需要经常使用Office 套装软件的用户,学用VBA 有助于使工作自动化,提高工作效率。另外,由于VBA 可以直接应用Office 套装软件的各项强大功能,所以对于程序设计人员的程序设计和开发更加方便快捷。


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

原文地址:https://54852.com/yw/12554722.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存