0

Python と tkinter パッケージの学習を開始しており、GUI ウィンドウにテキスト ファイルをロードするプログラムを作成しています。ファイル ブラウザーを開くために、以下のコードに示すように、ボタンとその必要な機能をインストールしました。プログラムは実行されますが、[参照] ボタンをクリックすると、「'assign_1' オブジェクトには属性 'var_filename' がありません」という属性エラーが表示されます。誰かがこれで私を助けることができれば、それは素晴らしいことです.

from tkinter import *
from tkinter import messagebox
from tkinter import simpledialog
from tkinter import filedialog
from math import *
from numpy  import *
import string

root = Tk()

def close_window_callback(root):
   if messagebox.askokcancel("Quit", "Do you really wish to quit?"):
   root.destroy()


class assign_1:
    def __init__(self,master):
        self.master = master
        frame = Frame(master)
        frame.pack()
        self.canvas = Canvas(master,width=1000,height=1000, bg="yellow")


        self.button_browse = Button(frame, text="Browse",
command=self.browse_file)
        self.button_browse.pack()

        self.button_load = Button(frame, text="Load")
        self.button_load.pack(side = LEFT)

        self.canvas.pack(expand=YES, fill=BOTH)

def browse_file(self):
    self.var_filename.set(filedialog.askopenfilename(filetypes=[("allfiles","*"),("pythonfiles","*.txt")]))
    filename = self.var_filename.get()
    print(filename)

root.protocol("WM_DELETE_WINDOW", lambda root_window=root:  close_window_callback(root_window))
assign_1(root)

root.mainloop()
4

2 に答える 2