2012-02-01 12 views
3

我想在應用程序的任務欄按鈕捕獲點擊事件。怎麼做?如何在任務欄點擊時捕獲隱藏/恢復事件

+2

是的,但我不知道如何做到這一點。這就是爲什麼我把一個消息,在stackoverflow – alex 2012-02-01 13:55:03

+0

幾乎所有的問題似乎是一線「我怎麼做X?」 「我怎麼做Y?」 :( – 2012-02-01 15:07:41

+3

從什麼時候開始SO需要很長的問題?他的單行問題是完整且有效的(奇怪的是,它出現在我自己的Google搜索結果的第一頁)。 – Jeff 2013-08-29 06:53:13

回答

3

單擊任務欄按鈕將導致Windows向程序發送WM_ACTIVATEAPP消息,並帶有一個參數,讓您知道它是否被激活或取消激活。處理此消息以通知。還會有一個後面的WM_SHOWWINDOW消息帶有SW_RESTORE或SW_MINIMIZE參數。

更重要的問題是「爲什麼?」如果通過捕獲該單擊,程序將執行除了正常Windows應用程序以外的任何操作(如果處於非活動狀態則激活,如果處於活動狀態則處於非活動狀態),則用戶會感到驚訝。用用於管理應用程序窗口的非標準行爲給用戶帶來驚喜幾乎不是一個好主意。相反,如果您正在使用此捕獲來控制應用程序中的內部狀態,而無需更改應用程序激活和停用的方式,則這些WM _...消息是如何完成的。