2017-01-29 63 views
8

我希望我的GTK應用程序在系統托盤中的狀態圖標,我有這方面的工作很好地使用StatusIcon,然而,這已被棄用:因爲GTK + 3 StatusIcon更換

gtk_status_icon_new已棄用版本3.14,不應在新編寫的代碼中使用。

使用通知

文檔說「使用的通知」,但我不知道這是什麼,其實就是。我將其解釋爲「使用桌面通知」,但據我所知,這可以用於完全不同的目的。我想要一個始終可見的系統托盤圖標,而不是臨時的彈出通知。儘管如此,我還找不到其他任何似乎是「通知」的含義。

是否存在GtkStatusIcon的新替代品,它在系統托盤中提供圖標,支持接收鼠標點擊/滾動信號並顯示彈出菜單?

回答

4

不幸的是,它們是指桌面通知。如果您仍想使用系統托盤圖標,請繼續使用GtkStatusIcon;請注意,它很可能很快就會被移除。 (關鍵是桌面通知比狀態圖標更多,但我相信還有其他原因,GTK +可能不應該像這樣處理桌面環境特定的東西......沒有任何東西阻止任何人做出GtkStatusIcon自己替換,但似乎還沒有人這樣做。)

+0

這是令人失望的,我希望GTK會努力保持更多功能。我想我會繼續使用GtkStatusIcon,並希望在刪除之前出現一個替代方案。感謝您清理它。 – Tomha

+0

它不會在GTK + 3中被刪除,但它可能會在GTK + 4中被刪除,而不是向後兼容。因此,在您將代碼遷移到該版本的GTK +時,您不必擔心。它可能會在以後的版本中被刪除;我不知道。至於多功能性,GTK +也不提供通知!你必須去一個單獨的庫,比如libnotify來完成它。 – andlabs

+0

關於通知的確如此,我主要使用GTK和Python,所以我習慣於通過GI API將所有通知和GTK一起導入,但這並沒有發生在我身上。我會很感興趣的,看看在未來的GTK版本中如何實現這一點,但前提是我可以繼續使用GTK + 3,這應該可以在目前做的很好。 – Tomha