LoginSignup
7
8

More than 5 years have passed since last update.

WindowsのPython3でGTK+3を使う際にハマったこと

Posted at

やりたかったこと

Windows環境のPython3でGTK+3を使いたかった。

ハマった時の環境

  • Windows 10
  • Python 3.5.2

何が起きたか

PythonのインストールからPyGObjectの導入まで、何もかも上手く行っていた。
が、しかし。

>>> import gi
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named 'gi'

大事なものがimport出来ない…

結論

PyGObjectがPython3.5以上に対応してなかった。
一旦全部消してPython3.4をインストールして、PyGObjectを導入し直したら動いた。

ちなみにPython3.4.5のWindows版が見当たらなかったので3.4.4をインストールしました。

正しい導入方法

ここからは必要な人以外スルーして大丈夫です。

まず公式サイトからPython3.4.4のインストーラーを落としてくる。
手順に従ってインストールしてください。

パスを通すオプションがデフォルトではオフになっているので、そこだけ直すように。

pyinst.png

Pythonがインストール出来たら今度はPyGObjectの方をインストールします。
PyGObjectのページWindows installers with Gtk3 supportというリンクからダウンロードページに飛び、最新のpygi-aio-*setup_*.exeをダウンロードしてください。

あとはインストーラーに従って、Pythonのパスを選択し、インストールしたいライブラリを選択(ここではGTK+)してそのままインストール完了。

初回はFontconfigのfc-cacheが動くので、真っ黒のコンソール画面がしばらく表示され続けますが、勝手に閉じるのを待ちましょう。

インストール後はPythonのインタプリタを開いて、

import gi
gi.require_version('Gtk', '3.0')
from gi.repository import Gtk

win = Gtk.Window()
win.connect("delete-event", Gtk.main_quit)
win.show_all()
Gtk.main()

このコードが正常に動作することを確認してください。
単純にウィンドウが表示されるだけです。

あとはチュートリアルを読みながらコードを書きましょう。

参考

python - gi.repository Windows - Stack Overflow

7
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
7
8