Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/288.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Tkinter(.get)时出现Python错误_Python_Tkinter - Fatal编程技术网

使用Tkinter(.get)时出现Python错误

使用Tkinter(.get)时出现Python错误,python,tkinter,Python,Tkinter,我在从条目小部件中提取变量时遇到了一个问题,到目前为止我已经完成了这项工作,但我找不到我的错误。我正在使用Python3 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 detai

我在从条目小部件中提取变量时遇到了一个问题,到目前为止我已经完成了这项工作,但我找不到我的错误。我正在使用Python3

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函数。此外,你还想让程序在事件发生后获得一些东西,否则它将尝试什么也得不到,因为当程序启动时,那里将什么都没有。编辑您的代码,这样,如果您点击确认按钮,您将获得输入框中输入的内容

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

直接在这里发布所有代码。不要链接到代码。您还需要实际描述您的问题。在检查代码之后,它有几个问题。然而,直到你在问题中发布了你的代码和回溯错误,你才可能得到答案。