用Windows C 编写一个记事本程序
程序运行界面
一 从C/C++到Windows编程
我们学习的C/C++程序都是DOS程序(或称为Windows控制台程序),也就是现在大学里
一 从C/C++到Windows编程
我们学习的C/C++程序都是DOS程序(或称为Windows控制台程序),也就是现在大学里
的开设的《C/C++程序设计》的内容,这些程序由于不涉及到Windows 编程的细节,因此比较容易入门学习,这对训练初学者的编程思想是很有用的,也是有益的。但是当我们基本掌握了C/C++程序设计后,就不能仅仅停留在DOS下(或Windows控制台下)编写、运行程序。我们应该从编程思想的训练到Windows实用编程的转变。
对于初学Windows 编程的人来说,入门是难了一点,我们先介绍一个最简单的Hello 程序开始,然后再介绍记事本程序。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL,"Hello 欢迎使用Turbo C for Windows 集成实验与学习环境!","我的第一个Windows程序",MB_OK);
return 0;
}
对于初学Windows 编程的人来说,入门是难了一点,我们先介绍一个最简单的Hello 程序开始,然后再介绍记事本程序。
#include <windows.h>
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
{
MessageBox(NULL,"Hello 欢迎使用Turbo C for Windows 集成实验与学习环境!","我的第一个Windows程序",MB_OK);
return 0;
}
程序的运行结果是:
程序解析:
1、windows.h是每一个Windows程序都需要的头文件。
2、WinMain函数是所有Windows C程序的入口,类似于DOS C中的main函数。
3、MessageBox是一个Win32 API函数(API,Application Programming Interface 应用程序接口),其作用是弹出一个对话框,显示消息的内容。该函数的第一个参数是用来指定父窗口句柄,即对话框所在的窗口句柄。第二个参数是用来显示消息的内容(你可以修改
程序解析:
1、windows.h是每一个Windows程序都需要的头文件。
2、WinMain函数是所有Windows C程序的入口,类似于DOS C中的main函数。
3、MessageBox是一个Win32 API函数(API,Application Programming Interface 应用程序接口),其作用是弹出一个对话框,显示消息的内容。该函数的第一个参数是用来指定父窗口句柄,即对话框所在的窗口句柄。第二个参数是用来显示消息的内容(你可以修改
成你想显示的内容)。第三个参数是 对话框标的标题,如本例的“我的第一个Windows程序”,第四个参数是指定对话框中显示的按钮,试一试,将MB_OK修改成MB_OKCANCEL,运行一下程序会出现什么结果,再试一试修改成MB_RETRYCANCEL
二、Windows 程序简介
(1)Windows C程序的组成:
1.C程序源文件,扩展名为.c或.cpp
2.头文件,扩展名为.h
3.资源文件,扩展名为.rc
(2)源程序的组成结构
二、Windows 程序简介
(1)Windows C程序的组成:
1.C程序源文件,扩展名为.c或.cpp
2.头文件,扩展名为.h
3.资源文件,扩展名为.rc
(2)源程序的组成结构
Windows C程序有相对固定的基本结构,一般有入口函数WinMain和窗口函数。
1、WinMain函数
是所有Windows C程序的入口,类似于DOS C的main函数,其功能是完成一系列的定义和初始化工作,并产生消息循环。消息循环是整个程序运行的核心。
WinMain函数有三个基本的组成部分:函数说明、初始化和消息循环
a、WinMain函数的说明:
int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,PSTR szCmdLine, int iCmdShow)
参数说明:
hInstance 应用程序当前实例句柄
hPrevInstance 前一个实例句柄,在32位系统中该参数永远是NULL
szCmdLine 程序运行时的命令行参数
iCmdShow 程序运行时的显示方式,如最大化、最小化、隐藏显示等。
b、初始化
初始化包括窗口类的定义、注册、创建窗口实例和显示窗口四部分。
这是固定格式,所有的Windows程序基本一样,记住即可,具体参见下面的程序实例的注释。
2、窗口函数
窗口函数定义了Windows C程序对接受到的不同消息的响应,其中包含了应用程序对各种可能接收到的消息的处理过程,是消息处理分支控制语句的集合。通常窗口函数是有一个或多个switch语句组成。每一条case语句对应一种消息,当应用程序接收到一个消息时,就会执行相应case 语句下的程序模块来完成相应的功能。
窗口函数说明:
LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
参数说明:
hwnd 窗口句柄
message 代表所处理消息的消息值
wParam 消息的附加参数,是message的进一步信息
lParam 消息的附加参数,是message的进一步信息
一般用法:
getsavefilenameLRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
{
...
switch (message)
{
case 常数1:
...
case 常数2:
...
...
case WM_DESTROY:
PostQuitMessage (0) ; //在消息队列中插入一条“退出”消息
return 0 ;
}
...
case 常数2:
...
...
case WM_DESTROY:
PostQuitMessage (0) ; //在消息队列中插入一条“退出”消息
return 0 ;
}
return DefWindowProc (hwnd, message, wParam, lParam);//执行默认的消息处理
}
窗口函数的主体是消息处理语句,该语句是有一系列case语句组成。我们学习者自需要根据窗口可能收到的消息在case语句中编写相应的处理程序即可。
}
窗口函数的主体是消息处理语句,该语句是有一系列case语句组成。我们学习者自需要根据窗口可能收到的消息在case语句中编写相应的处理程序即可。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论