Windows程序设计实验指导书(完整)

  • 格式:doc
  • 大小:270.00 KB
  • 文档页数:25

下载文档原格式

  / 25
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《Windows程序设计》实验指导书

2009-3-1

目录

实验一:VC++6.0开发环境熟悉 (1)

实验二:API对话框应用程序设计 (3)

实验三:API菜单使用 (6)

实验四、API绘图程序 (12)

实验五、MFC程序设计 (17)

实验六:MFC对话框程序设计:计算器 (19)

实验七:MFC文档(SDI)应用:绘图程序 (21)

综合性设计实验 (22)

实验一:VC++6.0开发环境熟悉

一、实验目的

熟悉Visual C++ 6.0开发环境,掌握VC6中建立、维护、运行工程项目的方法,掌握VC6中调试的方法。

二、实验内容

熟悉Visual C++ 6.0开发环境,如AppWizard、ClassWizard、工具栏、编译、运行普通的C++应用程序等,并能编写一个简单C++应用程序。熟悉调试过程。

三、实验要求

1、按下图建立一个C++程序,实现菜单选择,可以实现两个整数的加减。

要求:

[1]、建立工程;

[2]、程序调试通过;

[3]、菜单和功能用一个类来实现。

2、制作一个简单的公司职员的管理程序,这个程序要求涉及到类、结构、函数的基本使用。同时,这个程序涉及到了对Visual Stuido集成开发环境的使用,有关这方面的详细内容,请参阅本书的第二单元“Visual C++编程基础”。

[1]、新建项目。

使用Visual C++的应用程序向导生成一个控制台应用程序Demo。项目类型选择“Win32Console Application”,在向导的第一步中将程序类型设置成“A"Hello, World!" application”。

[2]、添加职员信息类。

在集成开发环境的中选择Insert|New Class菜单进入添加类的对话框,将新增的类名设置成workmate。之后,分别修改workmate类的定义及实现文件。

[3]、使用职员信息类。

四、思考题

1、如何实现两个复数的加减?

附:一些小窍门

1) 有时候,你可能在编译的时候,计算机突然非法关机了(可能某人不小心碰了电源或你的内存不稳定等原因)。当你重启机器后打开刚才的项目,重新进行编译,发现VC会崩掉。你或许以为你的VC编译器坏了,其实不然(你试试编译其它项目,还是好的!),你只要将项目的.ncb、.opt、.aps、.clw文件以及Debug、Release目录下的所有文件都删掉,然后重新编译就行了。

2) 如果你想与别人共享你的源代码项目,但是把整个项目做拷贝又太大。你完全可以删掉以下文件:.dsw、.ncb、.opt、.aps、.clw、. plg文件以及Debug、Release目录下的所有文件。

3) 当你的Workspace中包含多个Project的时候,你可能不能直观地、一眼看出来哪个是当前项目。可以如下设置:Tools->Options->Format,然后在Category中选择Workspace window,改变其默认的字体(比如设成Fixedsys)就行了。

4) 如何给已有的Project改名字?将该Project关掉。然后以文本格式打开.dsp文件,替换原来的Project名字即可。

5) VC6对类成员的智能提示功能很有用,但有时候会失灵。你可以先关掉项目,将.clw和.ncb删掉,然后重新打开项目,点击菜单项View->ClassWizard,在弹出的对话框中按一下“Add All”按钮;重新Rebuild All。应该可以解决问题。

实验二:API对话框应用程序设计

一、实验目的

掌握VC6中建立API程序的方法。

二、实验内容

练习手工生成API Windows应用程序框架,以及利用VC的应用程序生成模版AppWizard来生成API程序框架。

三、实验要求

按下图建立一个API程序。

要求:

[1]、手工生成应用程序;

[2]、使用AppWizard自动生成。

四、实验步骤

(一)使用AppWizard自动生成:

1.在“File”菜单中选择“New”,将新建的类型设置成“Projects”。同时将项目类型设置成“Win32Application”。

2.在应用程序向导的第二步中选择“A typical "Hello World!" application。”

3.使用F5快捷键编译程序。

经过以上三个最简单的步骤,一个“Hello,World”程序便制作完毕。此时可以查看在该项目所在的文件夹下,生成了哪些文件,并应了解这些文件的具体用法(二)手工生成应用程序:

1.在“File”菜单中选择“New”,将新建的类型设置成“Projects”。同时将项目类型设置成“Win32Application”。

2.在应用程序向导的第二步中选择“Empty application。”

3.在“New”选择“C++Source”,按照课本上实例3-1的内容输入程序,。

4.使用F5快捷键编译程序

经过以上三个最简单的步骤,一个“Hello,World”程序便制作完毕。此时可以查看在该项目所在的文件夹下,生成了哪些文件,并应了解这些文件的具体用法

参考代码:

#include

#include

LRESULT CALLBACK WinSunProc(

HWND hwnd, // handle to window

UINT uMsg, // message identifier

WPARAM wParam, // first message parameter

LPARAM lParam // second message parameter

);

int WINAPI WinMain(

HINSTANCE hInstance, // handle to current instance

HINSTANCE hPrevInstance, // handle to previous instance

LPSTR lpCmdLine, // command line

int nCmdShow // show state

)

{ WNDCLASS wndcls;

wndcls.cbClsExtra=0;

wndcls.cbWndExtra=0;

wndcls.hbrBackground=(HBRUSH)GetStockObject(BLACK_BRUSH);

wndcls.hCursor=LoadCursor(NULL,IDC_CROSS);

wndcls.hIcon=LoadIcon(NULL,IDI_ERROR);

wndcls.hInstance=hInstance;

wndcls.lpfnWndProc=WinSunProc;

wndcls.lpszClassName="Computer2009";

wndcls.lpszMenuName=NULL;

wndcls.style=CS_HREDRAW | CS_VREDRAW;

RegisterClass(&wndcls);

HWND hwnd;

hwnd=CreateWindow("Computer2009","桂林电子科技大学应用科技学院",WS_OVERLAPPEDWINDOW,0,0,600,400,NULL,NULL,hInstance,NULL);

ShowWindow(hwnd,SW_SHOWNORMAL);

UpdateWindow(hwnd);

MSG msg;

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

{

TranslateMessage(&msg);

DispatchMessage(&msg);

}

return 0;

}

LRESULT CALLBACK WinSunProc(