2011-01-20 6 views
3

C#とMonoを使ってGTK GUIをビルドする必要があるかもしれません。私が正しく理解するなら、3つの選択肢があることを意味します。GTKを使ったGUIビルド#

  • GTK#ラッパークラスを呼び出すためにC#コードを記述します。 GUIは「コード内に」あります。

  • MonoDevelop GUIデザイナーを使用してください。これは、ステイックマークアップを使用してインターフェイスを構築します。私はちょうどXMLと思われる。

  • Gladeとlibgladeを使用してGUIを作成し、実行時に読み込みます。

私はMonoDevelopのGUIエディタについて少し経験があります。いいですが、エッジがわずかです。私は、ある時点で愚かなマークアップを手で編集する必要があると想像することができます。私は、Pythonで、過去にグレイドをも使用しました

...

これらのプロジェクトの両方が唯一の自然の中で実験的だったので、私は本当に前にこの戦いを戦ってきた人から聞きたいと思います。それぞれのメリットとデメリットは何ですか?昔の間、このプロジェクトの開発は、Windows、Linux上で場所を取ることができれば

最後に、それはいいだろう、とMac OS Xの

答えて

1

、MonoDevelopのGTKのデザイナーがひどかったです。今日では、豊富なGUIを構築するための非常に強固な(完全ではありませんが非常に堅実な)ソリューションです。すべてのプラットフォームで最適なオプションです。コードを使ってGUIを構築することは、かなり苦痛になることがあります。一方、Gladeを使用することは喜びですが、いくつかの欠点があります。これらの欠点は、Glade名前空間を使用してXML Gladeファイルをロードする必要があるため、実行時のコントロールのいくつかの限られたオプション(ウィンドウ上の不透明度の設定など)に関係します。もちろん、あなたのプロジェクトにGladeファイルをインポートするオプションは常にありますが、それは私のために働いたことはありません。

+0

私はMonoDevelopを別のものにするつもりです。私はそれを私のMac、Windows、Linuxのインストールで手に入れました。 Mac OS Xでは、それにはかなりの問題があることがわかりました。私はそれが一般的なOS XのGTK +を示すものではないと期待しています... – Nate

+0

あなたは最新のバージョンを持っていることを確認してください。 –

+0

Gladeファイルをlibglade(Glade名前空間)で読み込む必要はありません。この機能はGTKに組み込まれています( 'Gtk.Builder'として)。 – ptomato