首页 > 范文大全 > 正文

Visual C++,开发软件就是这么简单!

开篇:润墨网以专业的文秘视角,为您筛选了一篇Visual C++,开发软件就是这么简单!范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

上网冲浪的乐趣之一,就是下载各种各样的共享、免费软件试用,在惊叹软件作者的奇思妙想之余,你是否也想加入到软件开发者的行列?在一般人的眼中,程序员是一群拿着高工资的深不可测的人,想像着他们在0和1的数字世界中穿梭,似乎无所不知无所不能。其实,只要有兴趣并且有耐心,你同样也可以成为令人尊崇的程序员。怎么,你不相信?那就试着随我一起开发一款实用的工具软件吧,非常简单,没有多少编程基础也不要紧。

实例:我的光驱精灵―实用的光驱开/关软件

在Windows XP的“我的电脑”中,右击光驱盘符,选择“弹出”,即可弹出光驱。这一功能免去我们用手按光驱上按键的操作,可延长光驱的使用寿命。但是非常奇怪的是,Windows XP却没有提供相应的“关闭”功能,只能用手工方式按回光驱。下面我们要开发的“我的光驱精灵”软件,则可以自由地开/关光驱。我们使用是微软著名的开发套件visual 2003中的Visual c++(以下简称VC++)。源项目文件及最终编译好的可执行程序,可从/cfan/200606/CDcontrol.rar处下载。使用VC++ 6.0的朋友,同样可以借鉴。

STEP1

启动Visual 2003,执行“文件新建项目”菜单命令打开新建项目对话框,如图1所示,点击展开左侧的“Visual C++项目MFC”,在右侧选中“MFC 应用程序”。接着输入项目名称(如:CDcontrol),并设置好项目的存储位置(如:E:\MyPrograms)。

STEP2

单击“确定”,将打开MFC应用程序向导,如图2所示,点击左侧“应用程序类型”,在右侧选中“基于对话框”项(见图2)。

在“MFC的使用”项中,如果选择“在共享DLL中使用MFC”项,最后生成的程序会很小,但是要确保使用者的系统内已安装有MFC动态库文件;如选择“使用静态库中的MFC”项,则生成的程序会将MFC库文件一同包含到程序内,就不用担心用户的系统内是否有MFC动态库了,不过这样生成的程序文件也会大很多。

VC++ 6.0的新建项目向导是以“下一步”的方式一步一步进行的,不过它的选项设置与VC++.NET 2003非常相似。

在“MFC的使用”项中,如果选择“在共享DLL中使用MFC”项,最后生成的程序会很小,但是要确保使用者的系统内已安装有MFC动态库文件;如选择“使用静态库中的MFC”项,则生成的程序会将MFC库文件一同包含到程序内,就不用担心用户的系统内是否有MFC动态库了,不过这样生成的程序文件也会大很多。

STEP3

还可以继续设置“用户界面功能”及“高级功能”等项,这里取默认值,最后单击“完成”按钮返回VC++主界面,会发现已经自动生成对话框界面(见图3)。

STEP4

显然自动生成的界面与我们实际的要求相去甚远,下面就来修改一下,最后的效果如图4所示。

1.执行“视图工具箱”命令调出工具箱,选择“指针”工具,用它将原界面中的“确定”和“取消”按钮拖放到对界面的右下角。点选“确定”按钮,在右下角“属性”窗口(按F4键显示)中,找到Caption(标题)项,将它的值改成“关于”,回车确定后按钮上的文字随之改变。同样方法,将“取消”改成“退出”。

2.选择工具箱上的Button(按钮)工具,在界面左上角拖画出两个按钮,通过修改Caption的方法,将两个按钮的默认文字分别改成“弹出”和“关闭”。

3.原界面中的提示“TODO:在此放置对话框控件”,实际上就是一个静态文本控件,点击它,同样修改其Caption的值,改成图4所示中的“友情提示……”。如想在静态文本控件中输入多行文字,在需要回行处要加上转义符“\n”(不含引号)。文字太多,显示不出来的时候,可拖动控件四周的节点拉大它即可。选中工具箱中的Static Text(静态文本)工具,在左下角再拖画出一个文本控件,并将其Caption的值修改成自己需要的。

VC++ 6.0中,控件属性是以独立的对话框形式出现,双击某控件即可打开相应的属性对话框。

STEP5

我们是通过Windows多媒体设备的程序接口MCI提供的功能来实现光驱开/关控制的,所以要加入必要的头文件及库。单击右上角窗格下的“解决方案资源管理器”选项卡(快捷键为Ctrl+Alt+L),双击“头文件”下的“CDcontrolDlg.h”,在左侧打开的文件开始处“#pragma once”之下加入以下两行代码,用来包含相应的头文件及库(见图5):

#include

#pragma comment(lib,"winmm.lib")

VC++ 6.0中,首先需要在你开发的项目设置“ProjectSettingLinkObject/library modules”中加入库“winmm.lib”,并在头文件中加入代码包含多媒体控制头文件:"#include mmsystem.h"。

STEP6

单击右上角的“资源视图”选项卡(快捷键Ctrl+Shift+E),双击Dialog下的IDD_CDCONTROL_DIALOG回到对话框主界面中。双击“弹出”按钮,将自动跳转到该按钮所属的控制函数内,本例的函数名默认为OnBnClickedButton1(),如图6所示,在注释文字之下输入以下一行代码,它的作用是弹出光驱:

mciSendString("set cdaudio door open",0,0,NULL);

在VC++ 6.0中为按钮添加控制代码的方法稍有不同:右击按钮,选择Events,在弹出对话框中双击左侧的BN_CLICKED,又会弹出对话框,提示为响应函数取个名字,确定后,双击右上角窗格中新加入的BN_CLICKED,即可进入响应函数体内添加自己的代码了。

STEP7

以同样方法在“关闭”按钮的响应函数OnBnClickedButton2()内添加以下代码,它的作用是关闭弹出的光驱:

mciSendString("set cdaudio door closed",0,0,NULL);

至此,一个好玩又实用的工具软件就完成了,执行“调试启动”(快捷键F5)运行程序,弹出如图7所示窗口,单击“弹出”或“关闭”按钮,就可以方便地弹出或关闭光驱了。将项目目录下“Debug”文件夹中的程序文件“CDcontrol.exe”发送给你的朋友们也试试,一定会镇他们一下的,呵呵。

上面的实例,还有许多需要完善的地方,比如添加快捷键操作等,限于篇幅,等以后有机会再详细介绍吧。另外,这个实例的目的是为了打破初学者对编程的恐惧感,所以尽量描写得轻松易做,而实际上要做出一个好的软件来,绝非一朝一夕之功,对其艰难的程度一定要有足够的思想准备哦。

职场论坛

关于Visual C++前途的讨论

网上关于VC++的争论很多,有人说“真正的程序员用VC”,也有人说,VC已是明日黄花,在它上面下工夫将会得不偿失。个人认为,VC作为微软最重要的开发工具之一,是不可能轻易被抛弃的,如果决意追随Windows平台搞开发,VC是一个相当重要的选择。以下摘自一位网名为iron的网友的话,我个人觉得很有道理:

我们知道,在DOS时代,市面上固然有MS C/C++、Quick Basic等微软公司的开发工具,同时也有许多诸如:Turbo C/C++、Turbo Pascal、Foxbase、FoxPro之类的第三方开发工具,并且后者更出名、使用得更广泛!当从DOS时代升迁到Windows时代后,固然微软的MS C/C++、Quick Basic等开发工具被淘汰了,然而同属于那个时代的其他第三方开发工具不也同时被淘汰了?覆巢之下岂有完卵!因此,我们完全有理由相信,将来如果有一天,由于技术进步的原因导致VC被淘汰了,那么与VC同一时代的、只能在Windows平台上搞开发的这许多开发工具,如:VB、BCB、Delphi等等都逃脱不了被淘汰的命运!如果你是由于怕技术的进步而不想学VC,那你最好不要学编程,并且你干脆什么都不要去学!因为任何一种开发工具、任何一种技术最终都会过时、都会被淘汰的,这是客观规律。