2009-01-30 120 views
2

我真的在考慮將我的下一個項目作爲C#/ Mono/Gtk#組合來開始。GTK#常見陷阱

在過去,我從來沒有選擇GTK,因爲用GTK構建的所有東西看起來都很糟糕,當涉及到視覺表示時,我有點偏執。然而,大量的應用程序(認爲Banshee,VMWare控制檯)已經清楚地證明了我的偏見,並將我對GTK的看法重新塑造爲不美觀。

我來自Win32 API,[CreateWindowEx] [2s]有太多的hwnd,GTK#提供了一個非常好的API,但如果我需要深入挖掘(擴展控制行爲等),它會對我起作用或與我?

我從來沒有使用過Mono和GTK,所以「嘿它在Linux和Mac OS上運行」的參數支持像膠水一樣粘在我的頭骨中,並且會喜歡人們在我的(很可能是)過度簡化的視圖中跳動一些感覺。

啓動時我該怎麼辦?

回答

4

我遇到的最大問題是缺乏良好的畫布控制,您可能需要如果你真的想創建漂亮的用戶界面。例如Banshee有一大堆由Aaron Bockover用開羅編寫的自定義控件。這個解決方案非常靈活,它需要對Gtk,開羅和其他一切都有深入的瞭解。 但是,不要以我的意見爲恥辱。 Gtk +和擴展Gtk#是一個了不起的環境,使用它很容易快速創建非常具有視覺衝擊力的GUI。

+0

感謝您的評論!我將創建自定義控件作爲一項挑戰和有趣的事情來提供一個體面的環境。 – 2009-05-01 07:31:51

4

既然你提到Banshee是一個啓發你的項目,並且它是用C#編寫的,也許從瀏覽它的源代碼開始吧?這會讓你直觀地看到UI代碼的外觀如何,在一個你已經知道的語言中,它有一個外觀和「UI複雜度級別」適合你的口味。

+0

感謝評論我實際上看了GTK +和GTK#的所有源代碼和例子,發現它非常乾淨和可用。我主要關心的是,如果我認爲合適並且在漂亮的API層下挖掘,它很容易擴展控件的行爲?我會重申我的問題。 – 2009-01-30 09:58:42