如何得知本窗口不再是最前的窗口[游戏暂停检测]

我们知道,有这么一个函数:GetForegroundWindow()可以获得当前前景窗口。
因此,配合宏参数,我们可以构建这么一个宏:

#define CheckForegroundWindow(hWnd) ((hWnd==GetForegroundWindow())?1:0)

这里,我用easyx创建的窗口时获得的窗口句柄来举例,代码如下:

#include 
#include 
#define CheckForegroundWindow(hWnd) ((hWnd==GetForegroundWindow())?1:0)
int main() {
	HWND hWnd=initgraph(300, 300);
	while (!_kbhit()) {
		if (CheckForegroundWindow(hWnd))
			outtextxy(0, 0, L"还在这");
		else 
			outtextxy(0, 0, L"出去了");
		Sleep(100);
	}
	closegraph();
	return 0;
}

gif演示如下:

如何得知本窗口不再是最前的窗口[游戏暂停检测]_第1张图片

你可能感兴趣的:(原创,函数)