小编Dan*_*l W的帖子

C++ GetDC 所有监视器

基本上,我正在制作一些模仿屏幕融化效果的东西,但我只能让它在我的主显示器上运行。我已经尽可能多地查找了,在 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)

c++ multiple-monitors visual-studio visual-c++

2
推荐指数
1
解决办法
4894
查看次数