久しぶりに記事記入
Windows上でGUIアプリを作りたいということで、Qtをちょこちょこいじってたが、
海の向こうではCFD関係にpythonが良く使われているらしく、pythonでGUIができないかやってみる。
[準備]
ソフトウェア(2011.6.11時点のバージョン)のダウンロード、インストール(以下の順、すべてdefault install)
1.python-3.2.msi (32bit:http://www.python.jp/Zope/download/pythoncore)
2.Qt_SDK_Win_offline_v1_1_1_en.exe (QtSDK 1.1.1, 1.5GBもある!:http://qt.nokia.com/downloads)
% online版でも良いが、今の職場はproxyが通らずインストールが進まない :-)
3.PyQt-Py3.2-x86-gpl-4.8.4-1.exe (32bit pythonのバージョンに合わせること:http://www.riverbankcomputing.co.uk/software/pyqt/download)
% 同じサイトのSIPは、PyQtをソースからビルドするのに必要らしいので、バイナリでインストールするなら不要っぽい。
[設定]
cmd.exeからpythonを実行できるよう、環境変数PATHに以下を追記しておく。
環境変数は、コンピュータ>プロパティ>システムの詳細設定から行う。
コマンドラインからpythonと打ってpythonが起動したらOK。
"C:\Python32; C:\Python32\Tools\Scripts"(←インストールしたバージョンに合わせる)
[テスト]
お約束のHello world。ファイルの文字コードは、UTF8で保存すること。
# # HelloWorld.py (UTF8) # import sys from PyQt4.QtCore import * from PyQt4.QtGui import * app = QApplication(sys.argv) #Qtアプリケーションオブジェクトを作る #このオブジェクトハンドルはマウスや #キーボードのイベントを取得する大本になる win = QLabel("Hello world") # ラベルを作成してwindowウィジェットに設定 win.show() # windowを示す sys.exit( app.exec_() ) # exitボタンが押されるまで表示
追記:
pythonスクリプトをexeファイル化するにはpy2exeというのを使っていたようだが、python3系には対応していないので、
cX_Freeze (http://sourceforge.net/projects/cx-freeze/files/4.2.3/) というを使ってみる。