2015-06-26 80 views
2

所以我試圖在輔助顯示中啓動全屏窗口。我有電腦設置擴展顯示。我已經嘗試了Stack Overflow上的所有解決方案,我發現它們都在筆記本電腦屏幕上啓動窗口,但它具有顯示器的寬度和高度,因此它部分延伸到顯示器中。所以問題(我認爲)是它沒有正確地獲得第二臺顯示器左上角的(x,y)座標。 下面是代碼:在第二個顯示器Win32 C++創建窗口

DEVMODE laptop; 
EnumDisplaySettings(NULL, 0, &laptop); 
int endOfLaptopW=laptop.dmPelsWidth; 
const POINT pt={endOfLaptopW+1, 360};//create point on second monitor 
HMONITOR hmon=MonitorFromPoint(pt, NULL); 
MONITORINFO mi = { sizeof(mi) }; 
if (!GetMonitorInfo(hmon, &mi)) return NULL; 

CreateWindow(TEXT("static"), TEXT("FULLSCREEN"), WS_POPUP|WS_VISIBLE, mi.rcMonitor.left, mi.rcMonitor.top, mi.rcMonitor.right - mi.rcMonitor.left, mi.rcMonitor.bottom - mi.rcMonitor.top, bkgrdPrintWin, NULL, g_hinst, 0);  
+1

請顯示您的實際代碼。 –

回答

2

EnumDisplaySettings不是你想在這裏的功能。枚舉圖形模式,圖形模式0可能是320x200或其他小的東西。它幾乎肯定不會是你的顯示器的當前分辨率。

請嘗試使用EnumDisplayMonitors函數。

+0

謝謝你做到了! – kasandell