3

私はpythonとgtkが初めてです。

なぜこのエラーメッセージが表示されるのかわかりません:

self.builder.get_object("checkstatus").set_from_stock("gtk-yes", Gtk.ICON_SIZE_BUTTON)
.......
AttributeError: 'gi.repository.Gtk' object has no attribute 'ICON_SIZE_BUTTON'

最初に、インポートしています:

import pygtk
pygtk.require('2.0')
from gi.repository import Gtk

問題は、gtk に「ICON_SIZE_BUTTON」という属性がないことですか? しかし、私がドキュメントを見ると、そうです...

http://developer.gnome.org/pygtk/2.22/class-gtkimage.html#method-gtkimage--set-from-stock

助けていただければ幸いです。ありがとう!

4

1 に答える 1

8

さて、いくつかのことが起こっています。

PyGObject を使用する GTK+ 3 では、 を使用from gi.repository import Gtkしてから使用しますGtk.IconSize.BUTTON

PyGTK を使用する GTK+ 2 の場合はimport pygtk、 を使用してimport gtkから を使用しますgtk.ICON_SIZE_BUTTON

つまり、バージョンを混同しています。PyGTK (GTK 2) は PyGObject に置き換えられ、GTK 3 では「gobject introspection」と呼ばれるものに置き換えられました。このチュートリアルをチェックしてください: http://python-gtk-3-tutorial.readthedocs.org/en/latest/index.html

于 2012-06-21T02:34:47.063 に答える