簡體   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