2011-01-20 111 views
3

我可能需要使用C#和Mono構建GTK GUI。如果我理解正確的話,這意味着我有3種選擇:GTK的GUI構建#

  • 編寫C#代碼來調用GTK#包裝類。 GUI是「在代碼中」。

  • 使用MonoDevelop GUI設計器。這使用stetic標記構建了一個接口。我似乎只是XML。

  • 使用Glade和libglade創建GUI並在運行時加載它。

我對MonoDevelop的GUI編輯器有一點經驗。這很好,但有一些粗糙的邊緣。我可以想象在某個時候需要手動編輯Stetic標記。

我也用格萊德在與Python過去......

這兩個項目在本質上是實驗而已,所以我真的想從別人以前已經並肩作戰聽到。每個的優點和缺點是什麼?

最後,這將是很好,如果該項目的開發可能發生在Windows,Linux和Mac OS X.

回答

1

在舊天,MonoDevelop的GTK設計者是可怕的。今天,它是構建豐富圖形用戶界面的非常穩固(不完全但非常穩固)的解決方案。這是所有平臺的最佳選擇。通過代碼構建GUI可能會變得非常痛苦。另一方面使用格萊德是一種喜悅,但你有一些缺點。這些缺點涉及到你的控件在運行時的一些有限選項,比如在Windows上設置Opacity等,因爲你需要使用Glade命名空間加載XML Glade文件。當然,總是有在您的項目中導入Glade文件的選項,但它從來沒有爲我工作。

+0

我將會給MonoDevelop另一個去。我已經在我的Mac,Windows和Linux上安裝了它。在Mac OS X上,我注意到它有很多問題。我希望這不是一般的OS X上的GTK +的指示... – Nate 2011-01-22 04:05:54