2012-12-29 51 views
2

我已經通過執行what Oracle told to do將我的程序設置爲出現在系統托盤中。我的第一個問題是關於圖標。系統托盤中有很多程序,而且我的程序隱藏了。我可以讓它顯示在酒吧中,無需點擊托盤中的箭頭?帶有Java的系統托盤

我還發現我可以通過調用trayIcon.displayMessage(title, content, icon)來顯示消息。我想知道我是否可以像Skype那樣改變氣球的前景。

enter image description here

或者我需要使用其他成才也顯示一條消息?它應該始終顯示在所有應用程序的前端,並且不應妨礙其他應用程序。例如,如果用戶正在玩遊戲,信息對話框不應該從鼠標和鍵盤竊取焦點。

回答

3

不,你不能用java的systray機制改變氣球的風格。 Skype不使用java機制來顯示系統托盤。樣式和顯示氣球是系統任務。

要顯示您的圖標,它是一個Windows配置 - 當您單擊箭頭時,有一個「自定義」鏈接,您可以在其中配置顯示哪些圖標。

如果你想影響窗口的風格,你需要實現你自定義的框架,感覺就像一個系統托盤信息窗口。你不會使用托盤類。

+0

感謝您的回答。如果我想在右下角繪製自定義彈出式警報,我需要知道什麼?你有什麼線索可以告訴要搜索什麼嗎? 順便說一句,當您全屏開啓時,SystemTray方式不起作用。 – MikkoP

+0

我會嘗試在右下角顯示一個JFrame。所以我會搜索我如何獲得這些座標。不幸的是,除非您繪製自己的圖形組件,否則它總是看起來像一個擺動框架。 – burna

+0

但是它不會干擾其他應用程序嗎?或者有沒有辦法打開一個JFrame而不從鍵盤和鼠標獲得焦點? – MikkoP

0

關於你的皮膚問題。 SystemTray displayMessage氣球無法以任何方式自定義。