2017-08-30 85 views
1

我正在開發一些基於Gtk的應用程序使用Vala。在我的應用程序中,我想添加一些自定義樣式。如何檢查Vala中的gtk版本?

我想爲Gtk 3.20和Gtk 3.20+版本保留我的樣式。正如我們所知,Gtk3已經從Gtk 3.20開始改變了窗口小部件類。

那麼,如何檢查gtk版本並相應地應用自定義樣式?我知道,我可以將兩種風格融合在一起。但不希望使用不必要的樣式重載應用程序。

我正在尋找這樣的事情

string style = null; 
If (GTK_VERSION >= 3.20) { 
    style = "window {border : none}"; 
} else { 
    style = "GtkWindow {border : none}"; 
} 

回答

4

您可以使用Gtk.get_major_versoin()Gtk.get_minor_version()分別獲得主要和次要版本。

string style = null; 
if (((Gtk.get_major_version() * 100) + (Gtk.get_minor_version())) >= 320) 
    style = "window {border : none}"; 
} else { 
    style = "GtkWindow {border : none}"; 
} 

參考: