欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    可视化实验报告.docx

    • 资源ID:2437963       资源大小:192.40KB        全文页数:24页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    可视化实验报告.docx

    1、可视化实验报告学生学号 0121010680227实验课成绩学 生 实 验 报 告 书实验课程名称可视化编程(VC)开 课 学 院计算机科学与技术学院指导教师姓名岑 丽学 生 姓 名汤东昌学生专业班级软件工程1002班2011-2012学年第2学期实验课程名称:_可视化编程(VC) 实验项目名称熟悉VC IDE,创建一个简单的VC界面实验成绩实 验 者汤东昌专业班级软件1002班组 别同 组 者实验日期 年 月 日一部分:实验预习报告(包括实验目的、意义,实验基本原理与方法,主要仪器设备及耗材,实验方案与技术路线等) 熟悉VC IDE,并用API创建一个基本窗口。第二部分:实验过程记录(可加页

    2、)(包括实验原始数据记录,实验现象记录,实验过程发现的问题等)#includeLRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);/窗口函数说明/-以下初始化窗口类-int WINAPI WinMain(HINSTANCE hInstance,/WinMain函数说明 HINSTANCE hPrevInst, LPSTR lpszCmdLine, int nCmdShow) HWND hwnd; MSG Msg; WNDCLASS wndclass; char lpszClassName=窗口;/窗口类名 char lpszTitle=My_Wi

    3、ndows;/窗口标题名 /窗口类的定义 wndclass.style=0;/窗口类型为默认类型 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); /

    4、窗口采用箭头光标/ wndclass.hbrBackground=GetStockObject(DEFAULT_PALETTE); wndclass.hbrBackground=NULL; /窗口背景为白色 wndclass.lpszMenuName=NULL;/窗口中无菜单 wndclass.lpszClassName=lpszClassName; /窗口类名为窗口示例 /-以下进行窗口类的注册- if(!RegisterClass(&wndclass) /如果注册失败则发出警告声音 MessageBeep(0); return FALSE; /创建窗口 hwnd=CreateWindow(

    5、lpszClassName,/窗口类名 lpszTitle,/窗口实例的标题名 WS_OVERLAPPEDWINDOW,/窗口的风格 CW_USEDEFAULT, CW_USEDEFAULT, /窗口左上角坐标为默认值 CW_USEDEFAULT, CW_USEDEFAULT, /窗口的高和宽为默认值 NULL, /此窗口无父窗口 NULL, /此窗口无主菜单 hInstance,/创建此窗口的应用程序的当前句柄 NULL);/不使用该值 /显示窗口 ShowWindow(hwnd,nCmdShow); /绘制用户区 UpdateWindow(hwnd); /消息循环 while(GetMes

    6、sage(&Msg,NULL,0,0) TranslateMessage(&Msg); DispatchMessage(&Msg); return Msg.wParam;/消息循环结束即程序终止时将信息返回系统/窗口函数LRESULT CALLBACK WndProc(HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) switch(message) case WM_DESTROY: PostQuitMessage(0);/调用PostQuitMessage发出WM_QUIT消息 default: return DefWindowPro

    7、c(hwnd,message,wParam,lParam); return(0);第三部分 结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会实验结果分析:如图所示为运行结果。实验时需要注意窗口类的初始化,进行窗口类的注册,然后再创建窗口。程序开头需要先进行窗口函数说明。小结、建议及体会:通过此次实验,我更好的认识和了解了API并且掌握了API一些基础知识实验课程名称:_可视化编程(VC) 实验项目名称基于API编程(一)实验成绩实 验 者汤东昌专业班级软件1002班组 别同 组 者实验日期 年 月 日一部分:实验预习报告(包

    8、括实验目的、意义,实验基本原理与方法,主要仪器设备及耗材,实验方案与技术路线等) 在窗口中画一个旋转的风车,风车中有三个叶片,颜色分别为红、绿和蓝,叶片外侧有一个外接圆。第二部分:实验过程记录(可加页)(包括实验原始数据记录,实验现象记录,实验过程发现的问题等)#include#include#include#define pi 3.1415926LRESULT CALLBACK WinProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam );int nNum=0,nMaxNum=20; /nMaxNum 绘图次数,nNum 当前位置

    9、int WINAPI WinMain( HINSTANCE hInstance, HINSTANCE hPrevInstace, LPSTR lpCmdLine, int nCmdShow ) char lpszClassName=窗口; char lpszTitle=4_8; /设计一个窗口类 WNDCLASS wndcls; wndcls.cbWndExtra=0; wndcls.cbClsExtra=0; wndcls.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); wndcls.hCursor=LoadCursor(NULL,IDC

    10、_ARROW); wndcls.hIcon=LoadIcon(NULL,IDI_APPLICATION); wndcls.hInstance=hInstance; wndcls.lpfnWndProc=WinProc; wndcls.lpszClassName=lpszClassName; wndcls.lpszMenuName=NULL; wndcls.style=CS_HREDRAW | CS_VREDRAW; RegisterClass(& wndcls); /创建窗口,定义一个变量用来保存成功创建的窗口后返回的句柄 HWND hwnd; hwnd=CreateWindow(lpszCl

    11、assName, lpszTitle, WS_OVERLAPPEDWINDOW, CW_USEDEFAULT, 0, 600, 450, NULL, NULL, hInstance, NULL); /显示及刷新窗口 ShowWindow(hwnd ,SW_SHOWNORMAL); UpdateWindow(hwnd); /定义消息结构体,开始消息循环 MSG msg; while(GetMessage(&msg ,NULL,0,0) TranslateMessage(&msg); DispatchMessage(&msg); return msg.wParam; /编写窗口过程函数LRESUL

    12、T CALLBACK WinProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) HBRUSH hBrush; HPEN hPen; char lpszTitle=My_windows; int i,x,y; /x,y分别作为圆心的坐标 double fAngle; switch(uMsg) case WM_PAINT: HDC hDC; PAINTSTRUCT ps; hDC=BeginPaint(hwnd ,&ps); SetMapMode(hDC,MM_ANISOTROPIC); SetWindowExtEx(hDC,400

    13、,300,NULL); /设置窗口逻辑单位 ,所谓逻辑单位,即在比例一致情况下选择足够大的区域 SetViewportExtEx(hDC,600,450,NULL); SetViewportOrgEx(hDC,300,200,NULL); hPen=(HPEN)GetStockObject(RGB(10,100,20); /画外圆 SelectObject(hDC,hPen); Ellipse(hDC,-100,-100,100,100); hBrush=CreateSolidBrush(RGB(255,0,0); SelectObject(hDC,hBrush); fAngle=2*pi/n

    14、MaxNum*nNum; /设置初始角度,1/20*pi、 2/20*pi、3/20*pi、 x=(int)(50*cos(fAngle); /初始圆心位置坐标 R (x,y) y=(int)(50*sin(fAngle); Pie(hDC,x-50,y-50,x+50,y+50, (int)(x+50*cos(fAngle),(int)(y+50*sin(fAngle), (int)(x+50*cos(fAngle+pi),(int)(y+50*sin(fAngle+pi) ); hBrush=CreateSolidBrush(RGB(0,255,0); SelectObject(hDC,h

    15、Brush); fAngle=2*pi/nMaxNum*nNum; /设置初始角度,1/20*pi、 2/20*pi、3/20*pi、 x=(int)(50*cos(fAngle+2*pi/3); /初始圆心位置坐标 R (x,y) y=(int)(50*sin(fAngle+2*pi/3); Pie(hDC,x-50,y-50,x+50,y+50, /易知 (int)(x+50*cos(fAngle+2*pi/3), (int)(y+50*sin(fAngle+2*pi/3), (int)(x+50*cos(fAngle+pi+2*pi/3), (int)(y+50*sin(fAngle+p

    16、i+2*pi/3); hBrush=CreateSolidBrush(RGB(0,0,255); SelectObject(hDC,hBrush); fAngle=2*pi/nMaxNum*nNum; x=(int)(50*cos(fAngle+4*pi/3); y=(int)(50*sin(fAngle+4*pi/3); Pie(hDC,x-50,y-50,x+50,y+50, /同理 (int)(x+50*cos(fAngle+4*pi/3), (int)(y+50*sin(fAngle+4*pi/3), (int)(x+50*cos(fAngle+pi+4*pi/3), (int)(y+

    17、50*sin(fAngle+pi+4*pi/3) ); nNum+; Sleep(100); InvalidateRect(hwnd,NULL,1); /刷新客户区 EndPaint(hwnd,&ps); DeleteObject(hBrush); DeleteObject(hPen); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; default: return DefWindowProc(hwnd,uMsg,wParam,lParam); 第三部分 结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素

    18、讨论、综合分析和结论等)二、小结、建议及体会实验结果分析:实验结果如图所示。实验中需要先对窗口进行编写,然后绘图,风车旋转既对窗口进行不断刷新。小结、建议及体会:通过本次实验了解windows的图形设备接口和windows绘图,掌握windows应用程序中有关图形的编程技术及其应用。实验课程名称:_可视化编程(VC) 实验项目名称基于API编程(二)实验成绩实 验 者汤东昌专业班级软件1002班组 别同 组 者实验日期 年 月 日一部分:实验预习报告(包括实验目的、意义,实验基本原理与方法,主要仪器设备及耗材,实验方案与技术路线等) 设计一个键盘程序,当按ctrl键时,表明要画椭圆;当按shi

    19、ft键时,表明要画矩形。然后单击向右箭头键,椭圆或矩形的长度加10;单击向下箭头时,椭圆或矩形的高度加10;单击home键时,整个圆形或矩形向左移动;单击end键时,整个圆形或矩形向右移动;单击up键时,整个圆形或矩形向上移动;单击pagedown键时,整个圆形或矩形向下移动。第二部分:实验过程记录(可加页)(包括实验原始数据记录,实验现象记录,实验过程发现的问题等)#include #include LRESULT CALLBACK WndProc( HWND hwnd, / handle to window UINT uMsg, / message identifier WPARAM wP

    20、aram, / first message parameter LPARAM lParam / second message parameter);int l=0;int r=0;int x=0;int p=0,q=0;int u=0;int d=0;int WINAPI WinMain( HINSTANCE hInstance, / handle to current instance HINSTANCE hPrevInstance, / handle to previous instance LPSTR lpCmdLine, / command line int nCmdShow ) WN

    21、DCLASS wndcls; wndcls.cbClsExtra=0; wndcls.cbWndExtra=0; wndcls.hbrBackground=(HBRUSH)GetStockObject(GRAY_BRUSH); wndcls.hCursor=LoadCursor(NULL,IDC_CROSS); wndcls.hIcon=LoadIcon(NULL,IDI_ERROR); wndcls.hInstance=hInstance; wndcls.lpfnWndProc=WndProc;/ wndcls.lpszClassName=WHUT; wndcls.lpszMenuName=

    22、NULL; wndcls.style=CS_HREDRAW |CS_VREDRAW; RegisterClass(&wndcls); HWND hwnd; hwnd=CreateWindow(WHUT,键盘实例,WS_OVERLAPPEDWINDOW /*& WS_MINIMIZEBOX*/, 0,0,600,400,NULL,NULL,hInstance,NULL); ShowWindow(hwnd,SW_SHOWNORMAL/*SW_MINIMIZE*/); UpdateWindow(hwnd); MSG msg; while(GetMessage(&msg,NULL,0,0) Trans

    23、lateMessage(&msg); DispatchMessage(&msg);/ return 0;LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,UINT wParam,LONG lParam) HDC hDC; /定义设备环境句柄 PAINTSTRUCT ps; /定义包含绘图信息的结构体变量 HBRUSH hBrush; /定义画刷句柄 /下面定义并初始化按键标志变量 static BOOL nUpKeyDown=FALSE, nDownKeyDown =FALSE, nLeftKeyDown =FALSE, nRightKeyDow

    24、n =FALSE, nShiftKeyDown=FALSE, nCtrlKeyDown=FALSE, nHomeKeyDown=FALSE, nEndKeyDown=FALSE; switch(iMessage) case WM_KEYDOWN: switch(wParam) case VK_LEFT: /当按向左箭头键时,变量置为真 l+; break; case VK_RIGHT: /当按向右箭头键时,变量置为真 r+; break; case VK_SHIFT: /当按Shift键时,变量置为真 x=1; break; case VK_CONTROL: /当按Control键时,变量置为

    25、真 x=2; break; case VK_HOME: /当按Home键时,变量置为真 p+; break; case VK_END: /当按End键时,变量置为真 q+; break; case VK_UP: /当按向上箭头键时,变量置为真 u+; break; case VK_DOWN: /当按向下箭头键时,变量置为真 d+; break; default: break; InvalidateRect(hWnd,NULL,TRUE); break;case WM_PAINT: /处理绘图消息 hDC=BeginPaint(hWnd,&ps); hBrush = (HBRUSH)GetSto

    26、ckObject(WHITE_BRUSH); /创建白画刷 SelectObject(hDC,hBrush); /选入白画刷 /输出信息: if(x=1) Rectangle(hDC,100+(r-l)*10,100+(d-u)*10,200+(r-l)*10+10*p,200+(d-u)*10+10*q); SelectObject(hDC,hBrush); /选入白画刷 else if(x=2) Ellipse(hDC,100+(r-l)*10,100+(d-u)*10,200+(r-l)*10+10*p,200+(d-u)*10+10*q); SelectObject(hDC,hBrus

    27、h); /选入白画刷 /删除画笔和画刷 DeleteObject(hBrush); EndPaint(hWnd,&ps); break;case WM_DESTROY: PostQuitMessage(0); return 0;default: return(DefWindowProc(hWnd,iMessage,wParam,lParam);return 0;第三部分 结果与讨论(可加页)一、实验结果分析(包括数据处理、实验现象分析、影响因素讨论、综合分析和结论等)二、小结、建议及体会实验结果分析:如图所示为按ctrl键后程序响应画出圆形。实验中需注意对每个按键的消息响应。小结、建议及体会:通过本次实验了解windows应用程序中对键盘操作的响应,并掌握其编程方法,更好的理解鼠标及键盘的消息及其响应。实验课程名称:_可视化编程(VC) 实验项目名称基于MFC编程(一)实验成绩实 验 者汤东昌专业班级软件1002班组 别同 组 者实验日期 年 月 日一部分:实验预习报告(包括实验目的、意义,实验基本原理与方法,主要仪器设备及耗材,实验方案与技术路线等) 用MFC的向导创建编辑框,在编辑框中实现算术加、减、乘和除的运算。第二部分:实验过程记录(可加页)(包括实验原始数据记录,实验现象记录,实验过程发现的问题等)先使用各个控件绘出如图所示界面然后为各个空


    注意事项

    本文(可视化实验报告.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开