だから私はmacbook proでpython 2.6を実行していて、tkinter guiのラベルにあるファイルから画像を表示するためにpythonでコードを書き込もうとしています。イメージは image.png と呼ばれます。このコードを使用すると、プログラムはエラーなしで実行されます
i = Image.open("image.png")
しかし、このコードを実行すると(1行追加します):
i = Image.open("image.png")
photo = ImageTk.PhotoImage(i)
プログラムがクラッシュし、コマンド ラインに「バス エラー」と表示されます。それが何を意味するのかさえわかりません。Image は機能するので、PIL は正しくインストールされていると思いますが、ImageTk が機能しないという事実は私を困惑させます。このバスエラーの原因を誰か教えてもらえますか?
編集:エラーをさらにテストするために新しいプログラムを作成しました。これが私が実行した正確なスクリプトです:
import Image
import ImageTk
i = Image.open("image.png")
photo = ImageTk.PhotoImage(i)
「バスエラー」を取得する代わりに、これが私のトレースバックです。
Traceback (most recent call last):
File "imageTest.py", line 5, in <module>
photo = ImageTk.PhotoImage(i)
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/PIL/ImageTk.py", line 113, in __init__
self.__photo = apply(Tkinter.PhotoImage, (), kw)
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py", line 3285, in __init__
Image.__init__(self, 'photo', name, cnf, master, **kw)
File "/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/lib-tk/Tkinter.py", line 3226, in __init__
raise RuntimeError, 'Too early to create image'
RuntimeError: Too early to create image
Exception AttributeError: "PhotoImage instance has no attribute '_PhotoImage__photo'" in <bound method PhotoImage.__del__ of <ImageTk.PhotoImage instance at 0x3c7a30>> ignored