Closed zhiyiYo closed 1 year ago
此为已知问题,因为Windows11上我默认会开启云母(mica)特效,如果你把整个窗口弄透明,不知为何就会看见原本的标题栏按钮。解决方案也很简单,就是关闭云母特效,换成亚克力特效或者我自己模拟的模糊特效。
2.3.4 以上的版本编译报错几个宏未声明,不知道如何解决,恳请作者大大指教
具体什么错误呢,麻烦贴出来
报错内容如下:
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:361:26: error: 'WM_GESTURE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_GESTURE)
^~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:361:26: note: suggested alternative: 'GL_TEXTURE'
DEFINE_WIN32_MESSAGE(WM_GESTURE)
^~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:362:26: error: 'WM_GESTURENOTIFY' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:362:26: note: suggested alternative: 'WM_GESTURENOTIFIED'
DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:420:26: error: 'WM_POINTERDEVICECHANGE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE)
^~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:420:26: note: suggested alternative: 'WM_POINTERDEVICEADDED'
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE)
^~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:421:26: error: 'WM_POINTERDEVICEINRANGE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE)
^~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:421:26: note: suggested alternative: 'WM_POINTERDEVICEADDED'
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE)
^~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:422:26: error: 'WM_POINTERDEVICEOUTOFRANGE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE)
^~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:422:26: note: suggested alternative: 'WM_POINTERDEVICEADDED'
DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE)
^~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:423:26: error: 'WM_TOUCH' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_TOUCH)
^~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:423:26: note: suggested alternative: 'WM_POWER'
DEFINE_WIN32_MESSAGE(WM_TOUCH)
^~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:424:26: error: 'WM_NCPOINTERUPDATE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:424:26: note: suggested alternative: 'E_NOINTERFACE'
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:425:26: error: 'WM_NCPOINTERDOWN' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:425:26: note: suggested alternative: 'WM_NCXBUTTONDOWN'
DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:426:26: error: 'WM_NCPOINTERUP' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP)
^~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:426:26: note: suggested alternative: 'WM_NCPAINT'
DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP)
^~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:427:26: error: 'WM_POINTERUPDATE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERUPDATE)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:427:26: note: suggested alternative: 'POLEUPDATE'
DEFINE_WIN32_MESSAGE(WM_POINTERUPDATE)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:428:26: error: 'WM_POINTERDOWN' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERDOWN)
^~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:428:26: note: suggested alternative: 'WM_PAINTICON'
DEFINE_WIN32_MESSAGE(WM_POINTERDOWN)
^~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:429:26: error: 'WM_POINTERUP' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERUP)
^~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:429:26: note: suggested alternative: 'E_POINTER'
DEFINE_WIN32_MESSAGE(WM_POINTERUP)
^~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:430:26: error: 'WM_POINTERENTER' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERENTER)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:430:26: note: suggested alternative: 'WM_PRINTCLIENT'
DEFINE_WIN32_MESSAGE(WM_POINTERENTER)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:431:26: error: 'WM_POINTERLEAVE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERLEAVE)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:431:26: note: suggested alternative: 'WM_MOUSELEAVE'
DEFINE_WIN32_MESSAGE(WM_POINTERLEAVE)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:432:26: error: 'WM_POINTERACTIVATE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERACTIVATE)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:432:26: note: suggested alternative: 'WM_MOUSEACTIVATE'
DEFINE_WIN32_MESSAGE(WM_POINTERACTIVATE)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:433:26: error: 'WM_POINTERCAPTURECHANGED' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERCAPTURECHANGED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:433:26: note: suggested alternative: 'WM_CAPTURECHANGED'
DEFINE_WIN32_MESSAGE(WM_POINTERCAPTURECHANGED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:434:26: error: 'WM_TOUCHHITTESTING' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:434:26: note: suggested alternative: 'WM_NCHITTEST'
DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:435:26: error: 'WM_POINTERWHEEL' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:435:26: note: suggested alternative: 'WM_MOUSEHWHEEL'
DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL)
^~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:436:26: error: 'WM_POINTERHWHEEL' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:436:26: note: suggested alternative: 'WM_MOUSEHWHEEL'
DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL)
^~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:437:26: error: 'WM_POINTERROUTEDTO' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:437:26: note: suggested alternative: 'WM_POINTERDEVICEADDED'
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO)
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:438:26: error: 'WM_POINTERROUTEDAWAY' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY)
^~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:438:26: note: suggested alternative: 'LPINTERFACEDATA'
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY)
^~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:439:26: error: 'WM_POINTERROUTEDRELEASED' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:439:26: note: suggested alternative: 'WM_POINTERDEVICEDELETED'
DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:457:26: error: 'WM_DPICHANGED_BEFOREPARENT' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT)
^~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:457:26: note: suggested alternative: 'WM_DPICHANGED'
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT)
^~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:458:26: error: 'WM_DPICHANGED_AFTERPARENT' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT)
^~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:458:26: note: suggested alternative: 'WM_DPICHANGED'
DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT)
^~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:485:26: error: 'WM_DWMNCRENDERINGCHANGED' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:485:26: note: suggested alternative: 'WCA_NCRENDERING_EXILED'
DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED)
^~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:487:26: error: 'WM_DWMWINDOWMAXIMIZEDCHANGE' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:487:26: note: suggested alternative: 'WM_DWMTHUMBNAILSIZECHANGED'
DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE)
^~~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:488:26: error: 'WM_DWMSENDICONICTHUMBNAIL' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICTHUMBNAIL)
^~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:489:26: error: 'WM_DWMSENDICONICLIVEPREVIEWBITMAP' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICLIVEPREVIEWBITMAP)
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:490:26: error: 'WM_GETTITLEBARINFOEX' was not declared in this scope
DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX)
^~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:490:26: note: suggested alternative: 'LPTITLEBARINFO'
DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX)
^~~~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE'
#define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message },
^~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'bool wangwenx190::FramelessHelper::isNonClientMessage(UINT)':
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:29: error: 'WM_NCPOINTERUPDATE' was not declared in this scope
|| ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP))
^~~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:29: note: suggested alternative: 'E_NOINTERFACE'
|| ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP))
^~~~~~~~~~~~~~~~~~
E_NOINTERFACE
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:64: error: 'WM_NCPOINTERUP' was not declared in this scope
|| ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP))
^~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:64: note: suggested alternative: 'WM_NCPAINT'
|| ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP))
^~~~~~~~~~~~~~
WM_NCPAINT
In file included from D:/C++_Study/GUI/framelesshelper/src/core/sysapiloader_p.h:1,
from D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:32:
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'wangwenx190::FramelessHelper::Global::DpiAwareness wangwenx190::FramelessHelper::Utils::getDpiAwarenessForCurrentProcess(bool*)':
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:56: error: 'IsProcessDPIAware' was not declared in this scope
const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware);
^~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:80: note: in definition of macro 'API_CALL_FUNCTION'
((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__))
^~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:56: note: suggested alternative: 'kIsProcessDPIAware'
const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware);
^~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:80: note: in definition of macro 'API_CALL_FUNCTION'
((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__))
^~~~
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:102: error: no matching function for call to 'wangwenx190::FramelessHelper::SysApiLoader::get<<expression error> >(const QLatin1String&, const QLatin1String&)'
((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__))
^
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:30: note: in expansion of macro 'API_CALL_FUNCTION'
const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware);
^~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:52:19: note: candidate: 'template<class T> T wangwenx190::FramelessHelper::SysApiLoader::get(const QString&, const QString&)'
Q_NODISCARD T get(const QString &library, const QString &function)
^~~
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:52:19: note: template argument deduction/substitution failed:
D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:102: error: template argument 1 is invalid
((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__))
^
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:30: note: in expansion of macro 'API_CALL_FUNCTION'
const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware);
^~~~~~~~~~~~~~~~~
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'bool wangwenx190::FramelessHelper::isNonClientMessage(UINT)':
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:937:1: warning: control reaches end of non-void function [-Wreturn-type]
}
^
ninja: build stopped: subcommand failed.
此为已知问题,因为Windows11上我默认会开启云母(mica)特效,如果你把整个窗口弄透明,不知为何就会看见原本的标题栏按钮。解决方案也很简单,就是关闭云母特效,换成亚克力特效或者我自己模拟的模糊特效。
模拟的模糊特效是在另外一个仓库里面吗?例子和 README 里面好像没给出使用方式
此为已知问题,因为Windows11上我默认会开启云母(mica)特效,如果你把整个窗口弄透明,不知为何就会看见原本的标题栏按钮。解决方案也很简单,就是关闭云母特效,换成亚克力特效或者我自己模拟的模糊特效。
模拟的模糊特效是在另外一个仓库里面吗?例子和 README 里面好像没给出使用方式
用FramelessConfig这个类开启上面这个选项就可以了
报错内容如下:
D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:361:26: error: 'WM_GESTURE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_GESTURE) ^~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:361:26: note: suggested alternative: 'GL_TEXTURE' DEFINE_WIN32_MESSAGE(WM_GESTURE) ^~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:362:26: error: 'WM_GESTURENOTIFY' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:362:26: note: suggested alternative: 'WM_GESTURENOTIFIED' DEFINE_WIN32_MESSAGE(WM_GESTURENOTIFY) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:420:26: error: 'WM_POINTERDEVICECHANGE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE) ^~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:420:26: note: suggested alternative: 'WM_POINTERDEVICEADDED' DEFINE_WIN32_MESSAGE(WM_POINTERDEVICECHANGE) ^~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:421:26: error: 'WM_POINTERDEVICEINRANGE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE) ^~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:421:26: note: suggested alternative: 'WM_POINTERDEVICEADDED' DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEINRANGE) ^~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:422:26: error: 'WM_POINTERDEVICEOUTOFRANGE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE) ^~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:422:26: note: suggested alternative: 'WM_POINTERDEVICEADDED' DEFINE_WIN32_MESSAGE(WM_POINTERDEVICEOUTOFRANGE) ^~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:423:26: error: 'WM_TOUCH' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_TOUCH) ^~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:423:26: note: suggested alternative: 'WM_POWER' DEFINE_WIN32_MESSAGE(WM_TOUCH) ^~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:424:26: error: 'WM_NCPOINTERUPDATE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:424:26: note: suggested alternative: 'E_NOINTERFACE' DEFINE_WIN32_MESSAGE(WM_NCPOINTERUPDATE) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:425:26: error: 'WM_NCPOINTERDOWN' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:425:26: note: suggested alternative: 'WM_NCXBUTTONDOWN' DEFINE_WIN32_MESSAGE(WM_NCPOINTERDOWN) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:426:26: error: 'WM_NCPOINTERUP' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP) ^~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:426:26: note: suggested alternative: 'WM_NCPAINT' DEFINE_WIN32_MESSAGE(WM_NCPOINTERUP) ^~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:427:26: error: 'WM_POINTERUPDATE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERUPDATE) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:427:26: note: suggested alternative: 'POLEUPDATE' DEFINE_WIN32_MESSAGE(WM_POINTERUPDATE) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:428:26: error: 'WM_POINTERDOWN' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERDOWN) ^~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:428:26: note: suggested alternative: 'WM_PAINTICON' DEFINE_WIN32_MESSAGE(WM_POINTERDOWN) ^~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:429:26: error: 'WM_POINTERUP' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERUP) ^~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:429:26: note: suggested alternative: 'E_POINTER' DEFINE_WIN32_MESSAGE(WM_POINTERUP) ^~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:430:26: error: 'WM_POINTERENTER' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERENTER) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:430:26: note: suggested alternative: 'WM_PRINTCLIENT' DEFINE_WIN32_MESSAGE(WM_POINTERENTER) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:431:26: error: 'WM_POINTERLEAVE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERLEAVE) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:431:26: note: suggested alternative: 'WM_MOUSELEAVE' DEFINE_WIN32_MESSAGE(WM_POINTERLEAVE) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:432:26: error: 'WM_POINTERACTIVATE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERACTIVATE) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:432:26: note: suggested alternative: 'WM_MOUSEACTIVATE' DEFINE_WIN32_MESSAGE(WM_POINTERACTIVATE) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:433:26: error: 'WM_POINTERCAPTURECHANGED' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERCAPTURECHANGED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:433:26: note: suggested alternative: 'WM_CAPTURECHANGED' DEFINE_WIN32_MESSAGE(WM_POINTERCAPTURECHANGED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:434:26: error: 'WM_TOUCHHITTESTING' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:434:26: note: suggested alternative: 'WM_NCHITTEST' DEFINE_WIN32_MESSAGE(WM_TOUCHHITTESTING) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:435:26: error: 'WM_POINTERWHEEL' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:435:26: note: suggested alternative: 'WM_MOUSEHWHEEL' DEFINE_WIN32_MESSAGE(WM_POINTERWHEEL) ^~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:436:26: error: 'WM_POINTERHWHEEL' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:436:26: note: suggested alternative: 'WM_MOUSEHWHEEL' DEFINE_WIN32_MESSAGE(WM_POINTERHWHEEL) ^~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:437:26: error: 'WM_POINTERROUTEDTO' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:437:26: note: suggested alternative: 'WM_POINTERDEVICEADDED' DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDTO) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:438:26: error: 'WM_POINTERROUTEDAWAY' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY) ^~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:438:26: note: suggested alternative: 'LPINTERFACEDATA' DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDAWAY) ^~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:439:26: error: 'WM_POINTERROUTEDRELEASED' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:439:26: note: suggested alternative: 'WM_POINTERDEVICEDELETED' DEFINE_WIN32_MESSAGE(WM_POINTERROUTEDRELEASED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:457:26: error: 'WM_DPICHANGED_BEFOREPARENT' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:457:26: note: suggested alternative: 'WM_DPICHANGED' DEFINE_WIN32_MESSAGE(WM_DPICHANGED_BEFOREPARENT) ^~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:458:26: error: 'WM_DPICHANGED_AFTERPARENT' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT) ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:458:26: note: suggested alternative: 'WM_DPICHANGED' DEFINE_WIN32_MESSAGE(WM_DPICHANGED_AFTERPARENT) ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:485:26: error: 'WM_DWMNCRENDERINGCHANGED' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:485:26: note: suggested alternative: 'WCA_NCRENDERING_EXILED' DEFINE_WIN32_MESSAGE(WM_DWMNCRENDERINGCHANGED) ^~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:487:26: error: 'WM_DWMWINDOWMAXIMIZEDCHANGE' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:487:26: note: suggested alternative: 'WM_DWMTHUMBNAILSIZECHANGED' DEFINE_WIN32_MESSAGE(WM_DWMWINDOWMAXIMIZEDCHANGE) ^~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:488:26: error: 'WM_DWMSENDICONICTHUMBNAIL' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICTHUMBNAIL) ^~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:489:26: error: 'WM_DWMSENDICONICLIVEPREVIEWBITMAP' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_DWMSENDICONICLIVEPREVIEWBITMAP) ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:490:26: error: 'WM_GETTITLEBARINFOEX' was not declared in this scope DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX) ^~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:490:26: note: suggested alternative: 'LPTITLEBARINFO' DEFINE_WIN32_MESSAGE(WM_GETTITLEBARINFOEX) ^~~~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:246:53: note: in definition of macro 'DEFINE_WIN32_MESSAGE' #define DEFINE_WIN32_MESSAGE(Message) Win32Message{ Message, #Message }, ^~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'bool wangwenx190::FramelessHelper::isNonClientMessage(UINT)': D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:29: error: 'WM_NCPOINTERUPDATE' was not declared in this scope || ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP)) ^~~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:29: note: suggested alternative: 'E_NOINTERFACE' || ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP)) ^~~~~~~~~~~~~~~~~~ E_NOINTERFACE D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:64: error: 'WM_NCPOINTERUP' was not declared in this scope || ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP)) ^~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:931:64: note: suggested alternative: 'WM_NCPAINT' || ((message >= WM_NCPOINTERUPDATE) && (message <= WM_NCPOINTERUP)) ^~~~~~~~~~~~~~ WM_NCPAINT In file included from D:/C++_Study/GUI/framelesshelper/src/core/sysapiloader_p.h:1, from D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:32: D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'wangwenx190::FramelessHelper::Global::DpiAwareness wangwenx190::FramelessHelper::Utils::getDpiAwarenessForCurrentProcess(bool*)': D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:56: error: 'IsProcessDPIAware' was not declared in this scope const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware); ^~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:80: note: in definition of macro 'API_CALL_FUNCTION' ((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__)) ^~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:56: note: suggested alternative: 'kIsProcessDPIAware' const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware); ^~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:80: note: in definition of macro 'API_CALL_FUNCTION' ((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__)) ^~~~ D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:102: error: no matching function for call to 'wangwenx190::FramelessHelper::SysApiLoader::get<<expression error> >(const QLatin1String&, const QLatin1String&)' ((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__)) ^ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:30: note: in expansion of macro 'API_CALL_FUNCTION' const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware); ^~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:52:19: note: candidate: 'template<class T> T wangwenx190::FramelessHelper::SysApiLoader::get(const QString&, const QString&)' Q_NODISCARD T get(const QString &library, const QString &function) ^~~ D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:52:19: note: template argument deduction/substitution failed: D:/C++_Study/GUI/framelesshelper/include/FramelessHelper/Core/private/sysapiloader_p.h:68:102: error: template argument 1 is invalid ((FRAMELESSHELPER_PREPEND_NAMESPACE(SysApiLoader)::instance()->get<decltype(&func)>(k##lib, k##func))(__VA_ARGS__)) ^ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:2880:30: note: in expansion of macro 'API_CALL_FUNCTION' const BOOL isAware = API_CALL_FUNCTION(user32, IsProcessDPIAware); ^~~~~~~~~~~~~~~~~ D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp: In function 'bool wangwenx190::FramelessHelper::isNonClientMessage(UINT)': D:/C++_Study/GUI/framelesshelper/src/core/utils_win.cpp:937:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ ninja: build stopped: subcommand failed.
你Windows SDK太老了。你可以把所有找不到的宏都注释掉,那个就是调试用的,注释了没关系
好的,我试试看,谢谢作者的解答
如果使用 setWindowFlags(windowFlags() & ~Qt::WindowMinMaxButtonsHint & ~Qt::WindowCloseButtonHint);
可以隐藏最大化和最小化按钮,但是关闭按钮仍然显示为禁用初态:
如果使用
setWindowFlags(windowFlags() & ~Qt::WindowMinMaxButtonsHint & ~Qt::WindowCloseButtonHint);
可以隐藏最大化和最小化按钮,但是关闭按钮仍然显示为禁用初态:
如果你用的是自定义的标题栏,那么你自己把不需要的按钮隐藏掉就行,没必要修改window flags,而且你看到的那个灰掉的关闭按钮是原本的原生标题栏按钮,你是不是还是用的云母特效?切换到其他模糊效果就不会看到它了
如果你用的是我提供的标题栏,也是可以拿到那三个按钮的,直接hide掉就行
目前用的还是系统的云母效果,感觉自己模糊的云母没有那么通透,颜色有点趋近灰色。系统的标题栏无法交互,如果把自定义的标题栏隐藏了就不能放大缩小和关闭了
如果你倾向于继续使用云母效果,那么唯一的workaround就是想办法用不透明的元素去遮挡原本标题栏按钮的区域,我这边也没有什么好办法去隐藏它们。其实我能隐藏,但会破坏云母效果。目前我找不到两者兼顾的方法。
好像只有 23H2 有此问题,22H2 不会出现系统标题栏
跟23H2应该没什么关系。这个问题我很早就发现了。开启云母特效以后,窗口不能全透明,否则会看到原本的标题栏
核心问题:Win32窗口开启云母特效要求将非客户区扩展到整个窗口,否则窗口就是一个纯黑的背景,但如果扩展了非客户区,就会导致原本非客户区的东西(主要就是标题栏)能被看到。我暂时找不到解决办法。
要解决这个问题是不是只能用无边框标志位而非设置customMargins了
要解决这个问题是不是只能用无边框标志位而非设置customMargins了
我没试过设置Qt::FramelessWindowHint
能否解决这个问题,你可以试试。如果可行的话,我看看怎么整合到FramelessHelper里
环境信息
复现方式
将
framelesshelper/examples/widget/widget.cpp
的m_titleBar
隐藏掉,可以看到系统标题栏: