[英]How to detect if any app goes fullscreen or exiting fullscreen?
當有其他應用全屏顯示(如powerpoint或VLC)時,我需要在我的應用上禁用通知,以免打擾用戶。
現在,我看這段代碼,但它始終返回true。 是否有一些全屏應用程序。 我不確定這是否只適用於應用程序欄或任務欄。
HWND hWnd;
hWnd = FindWindow(L"Shell_TrayWnd", nullptr);
if( hWnd )
{
APPBARDATA apd;
apd.cbSize = sizeof(APPBARDATA);
apd.hWnd = hWnd;
bool uState = bool(SHAppBarMessage(ABN_FULLSCREENAPP , &apd));
if(uState)
qDebug()<<"fullscreen";
else
qDebug()<<"not fullscreen";
}
ABN_FULLSCREENAPP
不是您發送給Shell的消息,而是當應用程序進入或ABN_FULLSCREENAPP
全屏模式時Shell發送給您的消息。 該消息將發送到使用ABM_NEW
創建的應用欄的所有者。
文檔在這里 。
我閱讀的文檔是,您必須創建一個應用欄才能接收此消息,但是如果要隱藏它,則可以使用ABM_SETPOS
將其設置為零高度或寬度。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.