最近広く使われているというQt。これをPythonから使うのがPyQtです。フォームをQtDesignerで作ったときは.uiファイルに出力されますが、これをPythonから読み込むときは以下の2つの方法があるようです。pyuic4を使って.pyに変換して使うPyQt4.uic.loadUi()を使って.uiファイルを直接読むパッケージをpy2exeなどを使って配布する際には.pyにしておかないと不都合があるみたいですが、開発中はいちいち変換するのも面倒なので、できれば.uiを直接読みたいところです。uiファイルを直接読んだ場合、フォームを継承して使うのがイマイチという問題があります(私が方法を知らないだけかも...)。そこで、方法を調べていたところ以下の方法にたどり着きました。http://www.riverbankcomputing.com/pipermail/pyqt/2010-September/027970.htmlこれによると開発中は.uiを直接読みつつ、配布の際は.pyにしてしまうという方法が紹介されています。この方法はhgviewというプロジェクトで使われているそうなので、ソースを見て、私なりに実装し直してみました。hgviewではmix-inを使って問題を解決していましたが、同じ方法というのも芸がないのでメタクラスを使ってみました。この記事内のコード片は、パブリックドメインということにしておきますので、使用される方の責任でご自由にお使いください。sys.exit(app.exec_())ここで定義しているMyQtGuiMetaクラスを実装であるMyMainWindow.__metaclass__に、.uiファイルを_uifileに指定すれば.uiファイルを読み込んでウィンドウが作成されます。この例では.uiファイルはMyQtGuiMetaクラスを定義したファイルと同じディレクトリに配置するようにします。コメントコメントなどありましたらお願いします。