繁体   English   中英

我如何让 tkinter 处理复选框并调用某些函数?

[英]How do i get tkinter to process checkbox and call certain function?

我打算在这里做的是,比方说,在我勾选 google 的同时 ping google 和在我勾选 yahoo 时 ping yahoo 或在检查两者时同时 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()

{your_BooleanVar}.get()返回值TrueFalse

试试这个:

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()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM