1
私は最初の「大きな」Pythonプロジェクト(2番目のGUI)を作成しています。単純なSQLiteデータベースマネージャです。現在のところ、これは次のようになっています... 上部には、表示されているように、切り替えるテーブルのボタンとドロップダウンがあります。Python 3:Tkinter OptionMenu変更とパスの変数を検出
私がやりたいことは、ボタンを削除して、オーデナリーラベル(これは簡単です)に置き換えてから、OptionMenuで別のものが自動的に選択されるようにテーブルを変更させることです。
これは私が変更のために持っているものです。
def change(self, root, c, tableToChangeTo, table, list_columns):
table = tableToChangeTo.get()
cursor = c.execute('select Rowid, * from ' + table)
list_columns = [description[0] for description in cursor.description]
self.clear()
self.table(root, c, table, list_columns)
self.addGui(root, c, table, list_columns)
self.editGui(root, c, table, list_columns)
self.delGui(root, c, table, list_columns)
self.changeGui(root, c, table, list_columns)
def changeGui(self, root, c, table, list_columns):
gridRow = self.rowTotal
self.changeButton = Button(root, text="Change Table", command= lambda: self.change(root, c, var, table, list_columns))
self.changeButton.grid(row = 0 , column = 0)
var = StringVar(root)
var.set(table)
options = {""}
global tableList
ta = tableList
for t in ta:
options.add(t)
self.changeOption = OptionMenu(root, var, *options)
self.changeOption.grid(row = 0, column = 1)
これを短く甘くするために、別のテーブルを選択すると自動的に変更方法が実行されます。大きな問題は、メソッドをイベントにする方法と、同時に変数を渡すことができる方法を見つけることができないことです。
ご協力いただきありがとうございます。何か必要な場合は、お知らせください。