Python
1from tkinter import * 2from tkinter import ttk 3import pandas as pd 4import numpy as np 5 6#def button_click(): 7# show_selection() 8 9def show_selection(x): 10 for i in lb.curselection(): 11 if i == 0: 12 one = sum(x) 13 zero = len(x) - sum(x) 14 if one > zero: 15 print("OK") 16 elif i == 1: 17 one = sum(x) 18 zero = len(x) - sum(x) 19 if one > zero: 20 print("BAD") 21 22if __name__ == '__main__': 23 root = Tk() 24 root.title('Scrollbar 1') 25 26 # Frame 27 frame1 = ttk.Frame(root, padding=10) 28 frame1.grid() 29 30 # Listbox 31 currencies = ("A", "B") 32 v1 = StringVar(value=currencies) 33 lb = Listbox(frame1, listvariable=v1,height=3) 34 lb.grid(row=0, column=0) 35 36 # Scrollbar 37 scrollbar = ttk.Scrollbar( 38 frame1, 39 orient=VERTICAL, 40 command=lb.yview) 41 lb['yscrollcommand'] = scrollbar.set 42 scrollbar.grid(row=0,column=1,sticky=(N,S)) 43 44 a = [0,0,0,0,1,1,1] 45 b = [1,1,1,1,1,0,0] 46 47 #Button 48 button1 = ttk.Button(frame1, text='OK', command=lambda: show_selection(a)) 49 button1.grid(row=1, column=0, columnspan=2) 50 51 root.mainloop()
リストボックスのAが選ばれた時には、リストaに対して0の数が多ければ「OK」と表示。
リストボックスのBが選ばれた時には、リストbに対して1の数が多ければ「OK」と表示。
以上のように実行したいと考えています。
よろしくお願いいたします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/12/12 03:31
2017/12/12 04:25
2017/12/12 04:27