- 1、本文档共11页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
windows_sdk编程系列文章02_----_简单窗口程序
windows sdk 编程系列文章 简单窗口程序
2008-04-08 06:37
理论:
Windows 程序中,在写图形用户界面时需要调用大量的标准 Windows Gui 函数。
其实这对用户和程序员来说都有好处,对于用户,面对的是同一套标准的窗口,
对这些窗口的操作都是一样的,所以使用不同的应用程序时无须重新学习操作。
对程序员来说,这些 Gui 源代码都是经过了微软的严格测试,随时拿来就可以
用的。当然至于具体地写程序对于程序员来说还是有难度的。为了创建基于窗口
的应用程序,必须严格遵守规范。作到这一点并不难,只要用模块化或面向对象
的编程方法即可。
下面我就列出在桌面显示一个窗口的几个步骤:
1. 得到您应用程序的句柄 (对于 C 程序,可选);
2. 得到命令行参数 (如果您想从命令行得到参数,可选);
3. 注册窗口类 (必需,除非您使用 Windows 预定义的窗口类,如 MessageBox
或 dialog box;
4. 产生窗口 (必需);
5. 在桌面显示窗口 (必需,除非您不想立即显示它);
6. 刷新窗口客户区;
7. 进入无限的获取窗口消息的循环;
8. 如果有消息到达,由负责该窗口的窗口回调函数处理;
9. 如果用户关闭窗口,进行退出处理。
相对于单用户的 DOS 下的编程来说,Windows 下的程序框架结构是相当复杂的。
但是 Windows 和 DOS 在系统架构上是截然不同的。Windows 是一个多任务的操
作系统,故系统中同时有多个应用程序彼此协同运行。这就要求 Windows 程序
员必须严格遵守编程规范,并养成良好的编程风格。
例子:(见光盘 FirstWindow)
#include Windows.h
#include tchar.h
HWND hWinMain;
TCHAR szClassName[] = _T(MyClass);
TCHAR szCaptionMain[] = _T(My First Window!);
TCHAR szText[] = _T(Win32 program, Simple and powerful !);
WNDCLASSEX stdWndClass;
//如果有消息到达,由负责该窗口的窗口回调函数处理
LRESULT CALLBACK ProcWinMain( HWND hWnd,
UINT Msg,
WPARAM wParam,
LPARAM lParam
)
{
switch(Msg)
{
//如果用户关闭窗口,进行退出处理
case WM_CLOSE:
{
DestroyWindow(hWinMain);
PostQuitMessage(NULL);
}
break;
default:
return DefWindowProc(hWnd, Msg, wParam, lParam );
}
return 0;
}
int WINAPI WinMain( HINSTANCE hInstance,
HINSTANCE hPrevInstance,
LPSTR lpCmdLine,
int nCmdShow
)
{
MSG stMsg;
WNDCLASSEX stdWndClass;
RtlZeroMemory(stdWndClass, sizeof(stdWndClass));
stdWndClass.hCursor = LoadCursor(0,IDC_ARROW);
stdWndClass.cbSize = sizeof(stdWndCl
您可能关注的文档
最近下载
- Unit4 Have fun after class 第2课时 Story time(教学设计)三年级英语下册(译林版三起2025).docx
- 基于PLC的恒温恒湿自动控制系统设计.docx
- 负荷开关交接试验报告.xlsx
- 03坡地建筑结构设计的若干问题与解决方案.ppt VIP
- 《果树育种学》课程教学大纲.doc
- 《财务管理(第7版)》教案全套 王化成.docx
- 职业培训课:养老护理员 养老护理员职业简介、职业标准 职业简介.pptx
- 某住宅工程高层建筑施工组织设计方案.doc VIP
- 2023急性缺血性卒中抗血小板治疗:最新《中国脑血管病临床管理指南》推荐意见.docx
- 生猪屠宰兽医卫生检验人员理论考试题库及答案.docx
文档评论(0)