基本上,我正在制作一些模仿屏幕融化效果的东西,但我只能让它在我的主显示器上运行。我已经尽可能多地查找了,在 GetDC 上只有一个论坛适用于所有显示器,但它没有用,它所做的只是从我的主显示器到我的辅助显示器制作一个矩形,效果仍然只适用于我的主显示器。这是我读到的线程:GetDC(NULL) gets Primary Monitor or virtual screen?
LRESULT CALLBACK Melter(HWND hWnd, UINT Message, WPARAM wParam, LPARAM lParam) {
switch (Message) {
case WM_CREATE: {
HDC Desktop = GetDC(HWND_DESKTOP);
HDC Window = GetDC(hWnd);
BitBlt(Window, 0, 0, ScreenWidth, ScreenHeight, Desktop, 0, 0, SRCCOPY);
ReleaseDC(hWnd, Window);
ReleaseDC(HWND_DESKTOP, Desktop);
SetTimer(hWnd, 0, Interval, 0);
ShowWindow(hWnd, SW_SHOW);
break;
}
case WM_PAINT: {
ValidateRect(hWnd, 0);
break;
}
case WM_TIMER: {
HDC Window = GetDC(hWnd);
int uX = (rand() % ScreenWidth) - (150 / 2), …Run Code Online (Sandbox Code Playgroud)