关于窗口句柄的用法,网上能够搜到不少相关的文章,本文以windows API接口函数为例,简单介绍一下基本使用,主要包括找到此窗体,在找到的窗体写入数据,对窗体进行关闭,最大化,最小化的操做;windows
1.利用窗口句柄找到窗体:函数
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////接口
#include "apdefap.h" 变量
HWND wnd;//定义一个窗口句柄变量,用以存储找到的窗口句柄程序
//网上文章解释; 函数FINDWindow: HWND WINAPI FindWindow(LPCSTR lpClassName,LPCSTR lpWindowName);方法
//第一个参数填窗口的类名,第二个填窗口的标题名,实际上是不须要同时填两个参数的,也就是说,你只要知道窗口的类名或窗口的标题就能够了,没有的那个就用NULL代替。数据
wnd=FindWindow(NULL,"1.txt - 记事本");//得到窗口名为"无标题.txt - 记事本"的窗口句柄,名称可经过任务管理器中的应用程序名找到
printf("the wnd value is %d",wnd);字符
//wnd为0表明未发现此句柄,值>0说明有此句柄
if (wnd==0 )
MessageBox(wnd,"此窗体未打开!","提示",MB_OK);
else
MessageBox(wnd,"已找到此窗体!","提示",MB_OK);消息
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////参数
2.发送消息或者改变窗体状态
SendMessage(wnd,WM_CLOSE,0,0);//调用SendMessage函数,发送一个WM_CLOSE(关闭)消息给wnd窗口句柄。
函数定义:LRESULT SendMessage(HWND hWnd,UINT Msg,WPARAM wParam,LPARAM IParam);
第一个参数是窗口句柄,第二参数个是消息类型,下面的消息表列举了全部消息,第三,四个参数是消息附带信息,解释依赖于消息类型,好比一个字符消息(WM_CHAR),那么第三个参数就储存有一个字符的ASCII码。
ShowWindow(wnd,SW_HIDE);
函数定义BOOL ShowWinow(HWND hWnd,int nCmdShow);
SW_HIDE:隐藏窗口并激活其余窗口。第一个参数hWnd指明了窗口句柄,第二个参数指明了窗口的状态,如今给出第二个参数经常使用取值范围:
SW_MAXIMIZE:最大化指定的窗口。
SW_MINIMIZE:最小化指定的窗口而且激活在Z序中的下一个顶层窗口。
SW_RESTORE:激活并显示窗口。若是窗口最小化或最大化,则系统将窗口恢复到原来的尺寸和位置。在恢复最小化窗口时,应用程序应该指定;
窗口句柄的操做方式和操做类型很是多,本文只是简易描述了最简单的找到句柄方法及简单改变窗口的形式供你们了解!