2017-12-27 231 views
-1

我需要檢查用戶何時何地使用鼠標,而使用他的電腦。爲此,我創建了透明的表單,它始終保持在前臺。問題是,它不像我預期的那樣。透明的MouseClick事件不中斷後臺應用程序的事件

由於某種原因,當我選擇backgroundColortransparencyKey Form到Red我可以閱讀MouseEvents,但我無法對處於後臺的應用程序執行任何操作。我可以通過窗體看到它是透明的,但我無法在保留它的應用程序上使用鼠標進行任何操作。另一方面,當我將backgroundColortransparencyKey設置爲Control(系統顏色)時,我可以在其他應用程序上操作,但MouseEvents不起作用。

有沒有簡單的方法可以使用MouseEvents並能夠同時使用其他Windows應用程序?

+0

絕對不是一個好方法。你爲什麼不考慮創建一個服務而不是一個表單,要求O.S.每次點擊鼠標都會通知API? –

回答

2

如果您需要在系統級別控制鼠標或鍵盤活動,則只有一種方法,但並非易事:使用掛鉤。請參閱SetWindowsHookEx以供參考。

SetWindowsHookEx是一個Windows API,它攔截所有鍵盤和/或鼠標活動,並允許您的應用程序檢索信息。

Here and here (version 1)有幾個例子。

相關問題