收藏 分销(赏)

Windows API窗口程序设计.doc

上传人:pc****0 文档编号:7925027 上传时间:2025-01-27 格式:DOC 页数:3 大小:70.50KB 下载积分:10 金币
下载 相关 举报
Windows API窗口程序设计.doc_第1页
第1页 / 共3页
Windows API窗口程序设计.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
集美大学计算机工程学院实验报告 课程名称:TCP/IP协议分析与编程 班级: 实验成绩: 实验项目名称:Windows API窗口程序设计 学号: 上机实践日期:2016-03-24 实验项目编号:01 组号:1 上机实践时间: 2学时 一、 实验目的 运用Windows API进行编程 二、实验内容与设计思想 在桌面显示Windows窗口。窗口内居中显示“大家好,这是我的第一个Windows API程序!”同时播放背景音乐,并可通过程序改变窗口显示风格为只有标题栏,以及鼠标指针形状为手型。 三、实验使用环境 操作系统: Microsoft Windows XP SP2 编程环境: Visual C++ 6.0简体中文企业版 四、实验步骤和调试过程(要求:给出源码及实验结果截图) 源码: #include<windows.h> //定义手型鼠标指针 #ifndef IDC_HAND #define IDC_HAND MAKEINTRESOURCE(32649) #endif LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM) ;//声明WndProc回调函数 //主函数,程序调用的入口 int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow) { static TCHAR szAppName[] = TEXT ("HelloWorld!") ; HWND hwnd ; MSG msg ; WNDCLASS wndclass ; wndclass.style = CS_HREDRAW | CS_VREDRAW ; wndclass.lpfnWndProc = WndProc ; wndclass.cbClsExtra = 0 ; wndclass.cbWndExtra = 0 ; wndclass.hInstance = hInstance ; wndclass.hIcon=LoadIcon(NULL,IDI_APPLICATION) ; wndclass.hCursor= LoadCursor (NULL,IDC_HAND) ; wndclass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRUSH) ; wndclass.lpszMenuName = NULL ; wndclass.lpszClassName = szAppName ; if (!RegisterClass (&wndclass)) { MessageBox (NULL, TEXT ("This program requires Windows XP!"), szAppName, MB_ICONERROR) ; return 0 ; } hwnd = CreateWindow (szAppName, // window class name TEXT ("对话框"), // window caption WS_OVERLAPPEDWINDOW, // window style CW_USEDEFAULT, // initial x position CW_USEDEFAULT, // initial y position CW_USEDEFAULT, // initial x size CW_USEDEFAULT, // initial y size NULL, // parent window handle NULL, // window menu handle hInstance, // program instance handle NULL) ; // creation parameters ShowWindow (hwnd, iCmdShow) ; UpdateWindow (hwnd) ; while (GetMessage (&msg, NULL, 0, 0)) { TranslateMessage (&msg) ; DispatchMessage (&msg) ; } return msg.wParam ; } //返回长整型的消息处理回调函数 LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam) { HDC hdc ; PAINTSTRUCT ps ; RECT rect ; switch (message) { case WM_CREATE: PlaySound (TEXT ("C:/hellowin.wav"), NULL, SND_FILENAME | SND_ASYNC) ; return 0 ; case WM_PAINT: hdc = BeginPaint (hwnd, &ps) ; GetClientRect (hwnd, &rect); DrawText (hdc,TEXT("大家好,这是我的第一个Windows API 程序!"),-1, &rect, DT_SINGLELINE | DT_CENTER | DT_VCENTER); EndPaint (hwnd, &ps) ; return 0 ; case WM_DESTROY: PostQuitMessage (0) ; return 0 ; } return DefWindowProc (hwnd, message, wParam, lParam) ;} 实验结果: 五、实验小结(必写) 1.执行时出现错误 由于程序引用了PlaySound函数,应该在库文件加上相应的库 winmm.lib,在工程—设置—连接—工程选项里加上winmm.lib,并将/subsystem:console改成/subsystem:windows 2.手型在windows7不能直接添加,需要在头加上 #ifndef IDC_HAND #define IDC_HAND MAKEINTRESOURCE(32649) #endif 七、附录 《网络编程技术与应用》
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 百科休闲 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服