簡體   English   中英

以編程方式隱藏Windows上的應用程序

[英]Programmatically hide an application on windows

有沒有辦法以編程方式隱藏Windows上的應用程序? 我希望實現與Windows + D快捷方式相同的功能,但對於單個應用程序。 我想在該應用程序中執行此操作(應用程序包含多個窗口,其中一個窗口無法移動,調整大小,關閉或由用戶最小化)。 應用程序是用c ++編寫的,並使用Qt作為UI。

這樣做很容易:

1-檢索該窗口的句柄:

HWND hChild = GetDlgItem(hWnd, ID_MYCHILD);

2-使用ShowWindow或SendMessage發送給它SW_SHOW:

ShowWindow(hChild, SW_HIDE); // hide
ShowWindow(hChild, SW_SHOW); // show

SendMessage(hChild, SW_HIDE, 0, 0); // hide
SendMessage(hChild, SW_SHOW, 0, 0); // show
  • 如果窗口不屬於您的應用程序,則:

1 - 檢索主窗口:

HWND hWnd = GetForegroundWindow(void);

2-使用上面隱藏/顯示它

ShowWindow(HwndWindow, SW_MINIMIZE);

這是MSDN ShowWindow文檔

此外,如果您的句柄不可用,您可能會發現EnumChildWindows可用於查找所有這些窗口。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM