2011-12-19 7 views
5

TL; DR:GTKを使用して宣言的なUIを作成するためのライブラリはありますか? Pythonのサポートを優先します。Declarative GTK


Iは、Python/Djangoの開発者です、ユーザーインターフェースについての私の経験のほとんどは、宣言、疎結合UI設計が標準装備されたウェブ、からです。最近、私は学校プロジェクトのためにJava/Swingを使用してGUIアプリケーションを作成しなければならず、SwiXMLを使ってプロジェクトの宣言的なSwingレイアウトを作成しました。

私はPythonに似たような可能性があるのか​​どうか、自分に尋ねました。私はJavaをあまり好んでいないので、Swingアプリケーションの開発を開始しません。 Python GUI Toolkitsを探しているとき、私はこの分野の3人の主要プレーヤーがGTK、QT、Wxであると結論づけました。

私はGTKが好きですが、GTKで宣言的なUIを作成する方法が見つかりませんでした。 HTMLとSwiXMLに関する私の経験から、私はコードベースのUI作成が大きな混乱を招き、そのようにする必要がないことを好むでしょう。宣言的なUIははるかに柔軟性があり、より疎結合しています。

GTKを使用して宣言的なUIを作成するためのライブラリはありますか? Pythonのサポートを優先します。

このようなことがなければ(私が何も見つけられないので)、Linuxでのデフォルトの外観が気に入らなくても、QTを使い始めることになるかもしれません。 (でも、それはGTKに似たようにカスタマイズ可能です。)

+1

http://www.clutter-project.org/ – kechapito

+0

少し前、QtはLinuxでもGTKのテーマを正しく模倣し始めました。したがって、これ以上の「デフォルトの外観」はありません。また、宣言的なQt UIには[Qt Quick](https://qt.nokia.com/qtquick/)があります。 (この質問は特にGTKを対象としていたため、これをコメントとして追加する)。 –

+0

@marcushatchensonうわー、これはむしろきれいに見えます! –

答えて

12

私はあなたが探しているものはgtk.Builderだと思います。基本的にgtk.Builderオブジェクトを使用して、ユーザーインターフェイスのウィジェットを記述するxmlデータと、コードによって公開されるイベントへのコールバックを含むファイル.uiを読み込むことができます。 .uiファイルはgladeで作成することができるので、xmlを自分で書く必要はありません。

+0

ありがとう、それは便利に見えます。 Gladeはかなりいいようです。 –

+1

ここにチュートリアルがあります。ちょっと古いと思いました。http://www.micahcarrick.com/gtk-glade-tutorial-part-1.html –

0

enamlをご覧ください。 GTKツールキットはありませんが、これは私が知っている唯一のPython用の真に宣言的なフレームワークです。