一、获得窗口句柄
HWND WINAPI FindWindow(
_In_opt_ LPCTSTR lpClassName,
_In_opt_ LPCTSTR lpWindowName
);
该函数通过创建窗口时的类名和窗口名查找窗口并返回该窗口的句柄,函数不会搜索子窗口。该函数区分大小写。
参数
lpClassName [in, optional]
-
Type: LPCTSTR
类名和窗口名是在先前调用RegisterClass or RegisterClassEx时创建的。
类名既是窗口属性中的Class Name值,如果lpClassName为NULL,他会寻找所有和lpWindowName参数匹配的窗口。很多情况下对话框的Class Name为灰色(没有值且不可设置),因此调用该函数时该参数的值都为NULL。
lpWindowName [in, optional]
-
Type: LPCTSTR
窗口的名字即是窗口属性中的Caption值. 如果该参数为NULL,所有窗口名字都是匹配的.
返回值
该函数通过创建窗口时的类名和窗口名查找窗口并返回该窗口的句柄,函数不会搜索子窗口。该函数区分大小写。
参数
Type: LPCTSTR
类名和窗口名是在先前调用RegisterClass or RegisterClassEx时创建的。
类名既是窗口属性中的Class Name值,如果lpClassName为NULL,他会寻找所有和lpWindowName参数匹配的窗口。很多情况下对话框的Class Name为灰色(没有值且不可设置),因此调用该函数时该参数的值都为NULL。
Type: LPCTSTR
窗口的名字即是窗口属性中的Caption值. 如果该参数为NULL,所有窗口名字都是匹配的.
Type: HWND
如果函数调用成功,返回指向该窗口的句柄; 否则返回NULL。得到更多的错误信息调用GetLastError
注意
如果
lpWindowName
非空, FindWindow 会调用GetWindowText 函数去得到窗口的名字作为比较
二、获取控件句柄GetDlgItem(IDC_XXX),IDC_XXX为控件的ID值三、设置属性此处以设置文本为例:FindWindow(NULL,"CaptionName")->GetDlgItem(IDC_XXX)->SetWindowText(_T("Hello world"));