我使用CreateDesktop创建新桌面,并希望得到它的DC& RC。
RECT deskRC;
HDC deskDC;
HDESK hNewDesktop = CreateDesktop(...);
GetWindowRect(hNewDesktop, &deskRC);
deskDC = GetDC(hNewDesktop);
这只返回0。 有什么问题?或许还有另一种方法可以获得这些价值观。
P.S。:桌面正常创建。
还有一个问题:
感谢。我这次遇到了另一个问题,就是DC。
HDESK hNewDesktop = CreateDesktop("text_here", NULL, NULL, 0, GENERIC_ALL, NULL);
SetThreadDesktop(hNewDesktop);
SwitchDesktop(hNewDesktop);
HWND deskHW = GetDesktopWindow();
GetWindowRect(deskHW, &deskRC);
deskDC = GetWindowDC(deskHW);
deskDC不正确:((用原版测试,它没关系;我用它来画画)
这次不知道出了什么问题。
答案 0 :(得分:1)
GetWindowRect和GetDC适用于Windows;桌面不是窗口。您可以尝试通过SwitchDesktop切换到桌面,然后通过GetDesktopWindow获取其窗口;不要忘记切换回上一个桌面。