VC++实验指导书2文档格式.docx
- 文档编号:15769418
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:34
- 大小:1.42MB
VC++实验指导书2文档格式.docx
《VC++实验指导书2文档格式.docx》由会员分享,可在线阅读,更多相关《VC++实验指导书2文档格式.docx(34页珍藏版)》请在冰豆网上搜索。
图1.3应用程序向导首页
6)单击“下一步”,打开应用程序设置页,如图1.4所示;
图1.4应用程序设置
7)保持默认设置,单击“完成”,进入集成编译环境;
8)双击解决方案中的“MyMessageBox1.cpp”,在编辑器中打开该文件,如图1.5所示;
9)在入口函数“_tmain”中输入代码:
:
MessageBox(NULL,L"
HelloVC++"
L"
MYVC++"
MB_OK);
注意:
关于入口函数“_tmain”的说明,请参考ppt课件。
10)单击菜单“调试”“启动调试”,调试程序,系统将弹出如图1.6所示对话窗口,在此处单击“是”;
图1.6
11)系统将弹出如图1.7所示对话框,在此处单击“否”;
图1.7错误提示
12)回到编译环境,查看“输出”栏目信息,如图1.8所示
图1.8输出信息
13)双击错误信息,代码编辑器将定位到错误语句,如图1.9所示(请思考错误原因);
图1.9
14)请改正错误后重新编译、运行程序。
2.使用win32api函数MessageBox输出信息——Win32应用程序。
1)单击菜单“文件”“新建”“项目”,打开新建项目对话窗口(如图1.2所示);
2)在项目类型中选择“VisualC++”——“Win32”;
3)在模板中选择“Win32项目”;
4)输入项目名称(例如“MyMessageBox2”),选在项目存储位置,然后单击“确定”按钮,打开“win32应用程序向导”,如图1.3所示;
图1.10
5)保持默认设置,单击“完成”,进入集成编译环境;
6)双击解决方案中的“MyMessageBox2.cpp”,在编辑器中打开该文件,如图1.11所示;
图1.11
7)在MyMessageBox2.cpp代码中找到函数:
WndProc(HWND,UINT,WPARAM,LPARAM),在其中找到语句:
caseWM_PAINT:
hdc=BeginPaint(hWnd,&
ps);
//TODO:
在此添加任意绘图代码...
EndPaint(hWnd,&
break;
8)在其中添加语句:
9)单击菜单“调试”à
“启动调试”,调试程序,查看程序运行结果;
10)修改语句“:
MB_OK)”,使输出MessageBox样式如图1.12所示。
图1.12
11)将“:
MessageBox…”语句注释掉;
12)在函数:
WndProc中添加如下语句
caseWM_LBUTTONDOWN:
MessageBox(NULL,"
"
MB_OK|MB_ICONINFORMATION);
break;
请思考:
第一,这几个语句应该写在什么地方?
第二,这几个语句起什么作用?
13)调试程序,查看运行结果。
3.使用win32api函数输出文字。
1)参照实验项目2步骤1)~7)创建win32项目;
2)在其中添加语句:
HDChdc;
//定义设备描述表句柄
PAINTSTRUCTps;
//定义绘图信息结构变量
hdc=BeginPaint(hwnd,&
//获取要重画的窗口的设备描述表句柄
TextOut(hdc,10,20,"
哈喽,Windows编程创建的窗口!
"
28);
//输出文本
EndPaint(hwnd,&
//结束要重画的窗口
3)调试程序,查看运行结果。
4.创建窗口.
4)输入项目名称(例如“newwindow”),选在项目存储位置,然后单击“确定”按钮,打开“win32应用程序向导”,如图1.13;
图1.13
5)在图1.13中选中“空项目”,单击“完成”;
6)在解决方案栏目中选中“源文件”,单击鼠标右键,单击“添加”“新建项”,如图1.14;
图1.14
7)在弹出的对话窗口中,类别选择“代码”,模板选择“C++文件”,输入文件“名称”、“位置”,如图1.15单击添加;
图1.15
8)回到集成编译环境,在代码编辑器中输入如下代码:
#include<
windows.h>
//包含windows.h头文件
LRESULTCALLBACKWndProc(HWND,UINT,WPARAM,LPARAM);
/*入口函数WinMain()*/
intAPIENTRYWinMain(HINSTANCEhInstance,HINSTANCEhPrevInstance,LPSTRlpCmdLine,intnCmdShow)
{
WNDCLASSwndclass;
HWNDhwnd;
MSGmsg;
wndclass.style=CS_HREDRAW|CS_VREDRAW;
//改变窗口大小则重画
wndclass.lpfnWndProc=WndProc;
//窗口函数为wndproc
wndclass.cbClsExtra=0;
//窗口类无扩展
wndclass.cbWndExtra=0;
//窗口实例无扩展
wndclass.hInstance=hInstance;
//注册窗口类实例句柄
wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
//用箭头光标
wndclass.hCursor=LoadCursor(NULL,IDC_ARROW);
wndclass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
//背景为白色
wndclass.lpszMenuName=NULL;
//窗口默认无菜单
wndclass.lpszClassName="
Windows窗口创建"
;
//窗口类名为Windows窗口创建
if(!
RegisterClass(&
wndclass))returnFALSE;
hwnd=CreateWindow("
//窗口类名Window窗口创建
Window窗口创建"
//窗口名Window窗口创建
WS_OVERLAPPEDWINDOW,//重叠式窗口
CW_USEDEFAULT,CW_USEDEFAULT,//右上角屏幕默认值
CW_USEDEFAULT,CW_USEDEFAULT,//窗口宽度和高度默认值
NULL,//此窗口无父窗口
NULL,//此窗口无主菜单
hInstance,//创建此窗口的实例句柄
NULL);
//此窗口无创建函数
ShowWindow(hwnd,nCmdShow);
//显示窗口
UpdateWindow(hwnd);
//更新窗口的客户区
while(GetMessage(&
msg,NULL,0,0))
TranslateMessage(&
msg);
//键盘消息传来
DispatchMessage(&
//派送消息给窗口函数
}
returnmsg.wParam;
//返回退出值
}
LRESULTCALLBACKWndProc(HWNDhwnd,UINTmessage,WPARAMwParam,LPARAMlParam)
{
switch(message)
caseWM_PAINT:
//重画窗口客户区消息处理
HDChdc;
PAINTSTRUCTps;
hdc=BeginPaint(hwnd,&
TextOut(hdc,10,20,"
哈哈,Windows编程创建的窗口!
EndPaint(hwnd,&
return0;
caseWM_DESTROY:
//撤销窗口消息处理
PostQuitMessage(0);
//产生退出程序消息WM_QUIT
return0;
returnDefWindowProc(hwnd,message,wParam,lParam);
//其他转默认窗口函数
9)单击菜单“项目”“chuangkou属性”,打开如图1.16所示对话框;
图1.16
10)选中“配置属性”“常规”,将“字符集”设置为“未设置”,单击“确定”;
11)调试并运行程序,观察输出;
12)思考:
创建窗口的过程是:
设计一个窗口类;
注册窗口类;
创建窗口;
显示及更新窗口。
在第8)步添加的代码中,找出对应窗口创建过程及相关的代码。
实验2MFC编程基础(2学时)
一、实验目的:
1.学习使用类向导创建单文档MFC应用程序,MFC多文档应用程序,基于对话框的MFC应用程序三种不同类型的应用程序框架。
2.了解Windows的消息机制。
二、实验内容:
1.创建出一个单文档应用程序,能在视图窗口中输出"
Hello,WelcometoVisualC++2005!
;
2.创建出一个多文档文档应用程序,能在视图窗口中输出"
3.创建出一个基于对话框的应用,能在对话框中输出“Hello,WelcometoVisualC++!
”;
4.创建出一个单文档应用程序,当单击鼠标左键时,能在视图窗口中输出"
我单击了鼠标左键"
,当单击鼠标右键时,能在视图窗口中输出"
我单击了鼠标右键"
。
三、实验步骤:
1.单文档应用程序
(1)在VisualC++2005的启动界面中,选择“新建项目
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- VC 实验 指导书