簡體   English   中英

使用 Tkinter (.get) 的 Python 錯誤

[英]Python error using Tkinter (.get)

我在從條目小部件中提取變量時遇到問題,到目前為止我已經完成了這個,但我找不到我的錯誤。 我正在使用 python 3。

from tkinter import *

def main():
    global today,postal,user,expire,cardnum
    root = Tk()
    root.title("Card checker")
    instruction =Label(root, text="Please enter your card details\n")
    namel = Label(root, text="Name: ")
    post = Label(root, text="Postal code: ")
    today_date = Label(root, text="Todays date: ")
    expire_date = Label(root, text="Expiry date ")
    card_number = Label(root, text="Card Number: ")
    date1= ()
    postcode= ()
    name1= ()
    expire1= ()
    cardno = ()

    namel.grid(row=1, column =0)
    post.grid(row=2,  column =0)
    today_date.grid(row=3,  column =0)
    expire_date.grid(row=4,  column =0)
    card_number.grid(row=5,  column =0)
    todaydateE= Entry(root,textvariable=date1)
    postE= Entry(root,textvariable=postcode)
    nameE = Entry(root,textvariable=name1)
    expiredateE= Entry(root,textvariable=expire1)
    cardnumberE= Entry(root,textvariable=cardno)
    nameE.grid(row=1, column =1)
    postE.grid(row=2,  column =1)
    cardnumberE.grid(row=5,  column =1)
    expiredateE.grid(row=4,  column =1)
    todaydateE.grid(row=3,  column =1)

    doneButton = Button(root, text= "Confirm", command=datecheck)
    doneButton.grid(columnspan =2)
    today= date1.get()
    postal= (postcode.get())
    user= name1.get()
    expire= expire1.get()
    cardnum = cardno.get()


def datecheck():
    global today,postal,user,expire,cardnum
    print(postal)

所以你沒有正確使用 .get() 函數。 此外,您還想制作程序,以便在事件發生后使用 .get() 某些東西,否則它會嘗試一無所獲,因為當程序啟動時,那里什么也沒有。 編輯您的代碼,以便如果您點擊確認按鈕,您將獲得輸入框中輸入的任何內容

from tkinter import *

def datecheck():
    global today, postal, user, expire, cardnum
    today = todaydateE.get()
    postal = (postE.get())
    user = nameE.get()
    expire = expiredateE.get()
    cardnum = cardnumberE.get()
    print(postal)

global today, postal, user, expire, cardnum
root = Tk()
root.title("Card checker")
instruction = Label(root, text="Please enter your card details\n")
namel = Label(root, text="Name: ")
post = Label(root, text="Postal code: ")
today_date = Label(root, text="Todays date: ")
expire_date = Label(root, text="Expiry date ")
card_number = Label(root, text="Card Number: ")

namel.grid(row=1, column=0)
post.grid(row=2, column=0)
today_date.grid(row=3, column=0)
expire_date.grid(row=4, column=0)
card_number.grid(row=5, column=0)
todaydateE = Entry(root)
postE = Entry(root)
nameE = Entry(root)
expiredateE = Entry(root )
cardnumberE = Entry(root)
nameE.grid(row=1, column=1)
postE.grid(row=2, column=1)
cardnumberE.grid(row=5, column=1)
expiredateE.grid(row=4, column=1)
todaydateE.grid(row=3, column=1)

doneButton = Button(root, text="Confirm", command=datecheck)
doneButton.grid(columnspan=2)

root.mainloop()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM