作者在 2008-09-21 14:53:24 发布以下内容
原先打算使用窗口类型分辨子窗口:
首先找到你要枚举的主窗口
HWND hWnd = ::FindWindow(NULL,"**");
再枚举它的所有子窗口:
HWND hChildWnd = ::GetWindow(hWnd, GW_CHILD);
while( hChildWnd!=NULL )
{
// 在这里取子窗口的风格style
style=:: (childhwnd,GWL_STYLE); // 获得有关指定窗口的信息,GWL_STYLE:获得窗口风格
//
hChildWnd = ::GetWindow(hChildWnd, GW_HWNDNEXT);
}
但是发现一个对话框中可能由很多个相同风格的子窗口于是使用控件ID 识别
首先找到你要枚举的主窗口
HWND hWnd = ::FindWindow(NULL,"**");
再枚举它的所有子窗口:
HWND hChildWnd = ::GetWindow(hWnd, GW_CHILD);
while( hChildWnd!=NULL )
{
// 在这里取子窗口的控件ID
int nID = ::GetDlgCtrlID(hChildWnd);
//
hChildWnd = ::GetWindow(hChildWnd, GW_HWNDNEXT);
}