これは私が現在持っているコードの形式です:
import Tkinter as tk
class mycustomwidow:
def __init__(self,parent,......)
......
......
tk.Label(parent,image=Myimage)
tk.pack(side='top')
def main():
root=tk.Tk()
mycustomwindow(root)
root.mainlopp()
if __name__ == '__main__':
main()
Myimage私の問題は、クラスで使用した写真をどこで宣言すればよいmycustomwindowですか?
以下のようなものをMyimage=tk.PhotoImage(data='....')前に置くと、ルート ウィンドウの前にイメージを作成できないため、エラーが発生します。root=tk.Tk()too early to create image
import Tkinter as tk
Myimage=tk.PhotoImage(data='....')
class mycustomwidow:
def __init__(self,parent,......)
......
......
tk.Label(parent,image=Myimage)
tk.pack(side='top')
def main():
root=tk.Tk()
mycustomwindow(root)
root.mainlopp()
if __name__ == '__main__':
main()
Myimage=tk.PhotoImage(data='....')このような関数を入れるとmain()、 で画像が見つからないと表示Myimageされclass mycustomwindowます。
import Tkinter as tk
class mycustomwidow:
def __init__(self,parent,......)
......
......
tk.Label(parent,image=Myimage)
tk.pack(side='top')
def main():
root=tk.Tk()
Myimage=tk.PhotoImage(data='....')
mycustomwindow(root)
root.mainlopp()
if __name__ == '__main__':
main()
コード構造に何か問題がありますか? Myimageで使用できるようにするには、どこで宣言すればよいclass mycustomwindowですか?