クリックしたときに列と行の値を返すボタンが必要です。私はコーディングしようとしましたが、うまくいきませんでした。
my_button = ttk.Button(mainframe)
my_button['command'] = return_func(my_button.grid_info()['row'])
my_button.grid(column=1, sticky=(W, E))
ボタンを自動的に作成しているため、列と行の値が変化しています。どうすれば修正できますか?
あなたが書くとき、あなたはその引数でreturn_func(inpt.grid_info()['row'])実行しています。return_funcあなたはこれをしたくありません。
代わりに、を使用lambda: return_func(inpt.grid_info()['row'])して関数呼び出しのコンテナ関数を作成します。そうlambdaすれば、関数は呼び出されたときに関数を実行します。
これを行う別の方法は次のようになります。
def command_function():
return_func(inpt.grid_info()['row'])
my_button['command'] = command_function
私はあなたが議論を渡す必要があるかどうかを判断するのに十分に取り組んでいないtkので、それもあなたにとって問題になるかもしれません。