Q&A
実現したいこと
tksheetの一つ一つのセルを連想配列にいれ、クリックしたときのイベントで
連想配列のアイテムを取得したいのですが、方法を教えてください。
keyはセル内の値ではなく、セルそのもので、ItemはSheet上には表示しない値です
発生している問題・エラーメッセージ
TypeError: unhashable type: 'set'
該当のソースコード
Python
1def test(): 2 3 dic={} 4 5 def pr(e): 6 item = dic[sheet.get_selected_cells()] 7 print(item) 8 9 rt = tk.Tk() 10 rt.title('test') 11 rt.geometry("1800x1000") 12 13 frm_a = tk.Frame(rt) 14 frm_a.pack() 15 16 title_list = ['title' + str(x) for x in range(8)] 17 content_list = [['cell_' + '行' + str(j) + '_列_' + str(i) for i in range(10)] for j in range(300)] 18 19 sheet = tksheet.Sheet(frm_a, 20 width=1200, 21 height=900, 22 header_align='center', 23 headers=title_list, # タイトル 24 data=content_list, # テーブルのデータ 25 show_row_index=False) # 行番号を非表示 26 27 for row in range(len(content_list)): 28 for column in range(len(title_list)): 29 dic[sheet.get_selected_cells(row, column)] = '' 30 31 sheet.bind("<1>", pr) 32 sheet.pack() 33 34 print(dic) 35 36 rt.mainloop() 37test()
補足情報(FW/ツールのバージョンなど)
Python 3.10
回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2023/03/19 14:53