第一种方式 简单实用
就是ProjectSetting中
第二种是通过设置WindowStyle
不过这种方法有问题 一个是时间点问题 一开始就调用的话 不起作用,目前知道是只能延迟一段时间,然后无边框后 还残留一截黑边
.build.cs 添加"ApplicationCore", "Slate", "SlateCore"
代码
//#if PLATFORM_WINDOWS
// if (NoBoarder)
// {
// TSharedPtr<FGenericWindow> NativeWindow = GEngine->GameViewport->GetWindow()->GetNativeWindow();
// auto Window = static_cast<FWindowsWindow*>(NativeWindow.Get());
// auto hWnd = Window->GetHWnd();
//
// DWORD WindowExStyle = GetWindowLong(hWnd, GWL_EXSTYLE) & ~(WS_EX_WINDOWEDGE | WS_EX_DLGMODALFRAME);
// DWORD WindowStyle = GetWindowLong(hWnd, GWL_STYLE) & ~WS_CAPTION;
// SetWindowLongPtr(hWnd, GWL_EXSTYLE, (LONG_PTR)WindowExStyle);
// SetWindowLongPtr(hWnd, GWL_STYLE, (LONG_PTR)WindowStyle);
// UE_LOG(LogTemp, Warning, TEXT("Set Windows Success"));
// }
//
//#endif