我打算在这里做的是,比方说ping谷歌,而我勾选谷歌和ping雅虎,而我勾选雅虎或ping两个同时检查两者。在这种情况下,究竟是怎么做到的? 这是我正在使用的代码:
from tkinter import *
#import os
master = Tk()
def select_ping():
vardata1 = var1.get()
vardata2 = var2.get()
datas = [vardata1, vardata2]
for data in datas:
print ("Selected Items: ",datas)
#This is what i actually intend to do:
#if vardata1 is selected do:
#os.system("ping www.google.com -c 2")
#if vardata2 is selected do:
#os.system("ping www.yahoo.com -c 2")
#if both selected do both else exit.
break
Label(master, text="Select to ping.").grid(row=0, sticky=W)
var1 = BooleanVar()
Checkbutton(master, text="Google", variable=var1).grid(row=1, sticky=W)
var2 = BooleanVar()
Checkbutton(master, text="Yahoo", variable=var2).grid(row=2, sticky=W)
Button(master, text='Quit', command=master.quit).grid(row=3, column=0, sticky=W, pady=4)
Button(master, text='Ping', command=select_ping).grid(row=3, column=1, sticky=W, pady=4)
mainloop()
答案 0 :(得分:0)
{your_BooleanVar}.get()
返回值True
或False
试试这个:
import os
from tkinter import *
master = Tk()
def select_ping():
if var1.get():
os.system("ping www.google.com -c 2")
if var2.get():
os.system("ping www.yahoo.com -c 2")
Label(master, text="Select to ping.").grid(row=0, sticky=W)
var1 = BooleanVar()
Checkbutton(master, text="Google", variable=var1).grid(row=1, sticky=W)
var2 = BooleanVar()
Checkbutton(master, text="Yahoo", variable=var2).grid(row=2, sticky=W)
Button(master, text='Quit', command=master.quit).grid(row=3, column=0, sticky=W, pady=4)
Button(master, text='Ping', command=select_ping).grid(row=3, column=1, sticky=W, pady=4)
master.mainloop()