Windows编程工作总结3-窗口

遍历窗口

遍历顶层窗口

在windows系统,使用EnumWindows()遍历顶层窗口。具体使用细节如下。

typedef struct _ENUMWINDOWSTEST
{
	int32_t  testX;
	float testY;
}ENUMWINDOWSTEST;

/**
 *@brief 定EnumWindows()的回调函数。每遍历一个窗口,调用一次。
 *@param[in] hwnd:所获取的句柄。
 *@param[in] lParam:EnumWindows()第二个参数的输入。
 */
static BOOL CALLBACK EnumWindowsCallback(HWND hwnd, LPARAM lParam )
{
	char windowText[256];
	GetWindowText(hwnd, windowText, 256);
	printf("Window Text is: %s\n", windowText);
	static int32_t count = 0;
	ENUMWINDOWSTEST *windowTest = (ENUMWINDOWSTEST *)lParam;
	windowTest->testX = count;
	count++;
	return TRUE;//返回TRUE,EnumWindows()继续遍历窗口。FALSE停止遍历。
}

void main()
{
	ENUMWINDOWSTEST testStruct;
	testStruct.testX = 999999;
	printf("testX = %d\n", testStruct.testX);
	EnumWindows(EnumWindowsCallback, (LONG)&testStruct);
	printf("testX = %d\n", testStruct.testX);
	cin.get();
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值