我正在尝试从unity3d中制作的游戏应用程序中删除边框和标题栏。
这样做我正在做以下操作
private HWND removeWindowBorders(HWND hWnd) {
try {
long lStyle = GetWindowLongW(hWnd.getPointer(), GWL_STYLE);
long WS_CAPTION = 0x00C00000L;
long WS_THICKFRAME = 0x00040000L;
long WS_SYSMENU = 0x00080000L;
lStyle &= ~(WS_CAPTION | WS_THICKFRAME | WS_MINIMIZE | WS_MAXIMIZE | WS_SYSMENU);
SetWindowLongW(hWnd,GWL_STYLE,lStyle);
long lExStyle = GetWindowLongW(hWnd.getPointer(), GWL_EXSTYLE);
long WS_EX_DLGMODALFRAME = 0x00000001L;
long WS_EX_CLIENTEDGE = 0x00000200L;
long WS_EX_STATICEDGE = 0x00020000L;
lExStyle &= ~(WS_EX_DLGMODALFRAME | WS_EX_CLIENTEDGE | WS_EX_STATICEDGE);
SetWindowLongW(hWnd,GWL_EXSTYLE,lExStyle);
}
catch (LastErrorException e) {
System.out.println("HELLO WORLD");
}
return hWnd;
}
unityHandle = removeWinBorders(unityHandle); // unityHandle is HWND of unity app.
SetWindowPosF(unityHandle,null,100,50,0,0,0x0020 | 0x0001 | 0x0008);
现在,执行此操作后,Unity应用程序窗口的边框和标题栏已成功删除,但起始像素的坐标已更改。换句话说,它就像是:
任何帮助都会很明显。 谢谢。