我想制作自定义边框或只是删除另一个窗口的边框(另一个应用程序)。然而,我当前(使用GetWindowLong,SetWindowLong和SetWindowPos函数)删除边框的方式导致一个程序(cmd.exe)的图形问题,并且对另一个程序(可能和魔法II的英雄)没有任何作用。< / p>
我对C ++还不是很熟悉,也不知道如何去做。我想要简洁明了的边框,所以我可以在任务栏上放置一个cmd.exe,或者在无边框全屏播放HoMM2。
任何人都知道如何实现这一目标?
这是我目前的职能:
void noBorder(HWND win)
{
LONG style = GetWindowLong(win, GWL_STYLE);
style &= ~(WS_CAPTION | WS_SYSMENU | WS_THICKFRAME |
WS_MINIMIZE | WS_MAXIMIZEBOX | WS_BORDER);
SetWindowLong(win, GWL_STYLE, style);
style = GetWindowLong(win, GWL_EXSTYLE);
SetWindowLong(win, GWL_EXSTYLE, style | WS_EX_DLGMODALFRAME);
SetWindowPos(win, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE |
SWP_NOSIZE | SWP_FRAMECHANGED);
}