質問したいことはタイトルのとおりです。
tkinterを使用してGUIアプリを作成している途中でどうしてもわからないことが出てきたので、助言をいただきたいところです。
質問するためにだいぶ端折っている部分もありますがよろしくお願いします。
###プログラムの流れ
0. アプリを起動したら「CSV」ボタンを押して、CSVデータの中身を変数(二次元配列)に格納
- 1で格納した2次元配列データを使用してとある処理をしたいが、引数の受け渡しがうまくいかない。
python
1from tkinter import * 2import tkinter as tk 3 4def win_build(self): 5 root.minsize(750,300) 6 root.maxsize(750,300) 7 #ウィンドウのタイトル名と表示位置、大きさ 8 root.title("SoftRobotics_Controller") 9 root.geometry() 10 11 self.frame1 = tk.Frame(self) 12 self.frame1.pack() 13 self.frame2 = tk.Frame(self) 14 self.frame2.pack() 15 16 #実行ボタン 17 btn_start = tk.Button(self.frame1, 18 text="実行", 19 font=16, 20 width=20, 21 height=5, 22 borderwidth=4, 23 command = lambda:action(data)) 24 btn_start.grid(row=0, column=0, columnspan=1, sticky=tk.W + tk.E + tk.N + tk.S) 25 26 #CSV 27 btn_csv = tk.Button(self.frame1, 28 text="CSV", 29 font=16, 30 width=20, 31 height=5, 32 borderwidth=4, 33 command = csv) 34 btn_csv.grid(row=0, column=1, columnspan=1, sticky=tk.W + tk.E + tk.N + tk.S) 35 36def csv(): 37 data = [100,200,300] 38 return data 39 40def action(data): 41 print(data) 42 43if __name__=="__main__": 44 #画面表示 45 root = Tk() 46 win_build(root) 47 root.mainloop()
###エラー文
Exception in Tkinter callback Traceback (most recent call last): File "/usr/lib/python3.5/tkinter/__init__.py", line 1562, in __call__ return self.func(*args) File "ask.py", line 23, in <lambda> command = lambda:action(data)) NameError: name 'data' is not defined
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/18 01:00
2017/12/18 01:14
2017/12/18 10:30
2017/12/18 11:46
2017/12/18 12:04