'get'返回空值python [duplicate]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了'get'返回空值python [duplicate]相关的知识,希望对你有一定的参考价值。

这个问题在这里已有答案:

我试过这段代码,但是我得到get命令的空白响应?它只是在课堂上我得到空白的价值..但如果我创造一个功能而不是一个类我从文本中获得价值...

from Tkinter import *
from ttk import Button,Entry,Style
import pickle
class Home(Frame):
    def __init__(self,parent):
         Frame.__init__(self,parent)
         self.parent=parent
         self.initUI()

    def initUI(self):
        self.parent.title("HOME SCREEN")
        frame = Frame(self)
        global a
        global z


        self.pack(fill=BOTH, expand=1)
        label1=Label(frame,text="USERNAME",)
        label2=Label(frame,text="PASSWORD")
        text1=Entry(frame, show="*", width=15)
        text2=Entry(frame,width=15)
        login=Button(self,text="Login",command=self.load)
        register=Button(self,text='Register',command=self.dump)
        Quit=Button(self,text='Quit',command=self.quit)
        delete=Button(self,text='Delete Account',command=self.delete)
        showb=Button(self,text='Show Accounts',command=self.show)

        label1.pack(side=LEFT)
        text2.pack(side=LEFT, padx=5, pady=5)
        label2.pack(side=LEFT )
        text1.pack(side=LEFT, padx=5, pady=5)
        frame.pack(fill=BOTH, expand=1)

        Quit.pack(side=RIGHT ,padx=5, pady=5)
        register.pack(side=RIGHT)
        login.pack(side=RIGHT)
        delete.pack(side=RIGHT)
        showb.pack(side=RIGHT)

        a=text1.get()
        z=text2.get()
答案

在GUI出现在屏幕上之前,您正在调用text1.get()text2.get(),因此在尝试获取值之前,用户无法输入文本。您需要在用户有机会在窗口小部件中输入信息后调用的函数内移动这些调用。

另一答案

弄清楚我自己......

def initUI(self):
    self.parent.title("HOME SCREEN")


    frame = Frame(self)

    self.pack(fill=BOTH, expand=1)
    label1=Label(frame,text="USERNAME",)
    label2=Label(frame,text="PASSWORD")
    text1=Entry(frame, show="*", width=15,)
    text2=Entry(frame,width=15)
    login=Button(self,text="Login",command=self.load)
    register=Button(self,text='Register',command=self.dump)
    Quit=Button(self,text='Quit',command=self.quit)
    delete=Button(self,text='Delete Account',command=self.delete)
    showb=Button(self,text='Show Accounts',command=self.show)


    label1.pack(side=LEFT)
    text2.pack(side=LEFT, padx=5, pady=5)
    label2.pack(side=LEFT )
    text1.pack(side=LEFT, padx=5, pady=5)
    frame.pack(fill=BOTH, expand=1)

    Quit.pack(side=RIGHT ,padx=5, pady=5)
    register.pack(side=RIGHT)
    login.pack(side=RIGHT)
    delete.pack(side=RIGHT)
    showb.pack(side=RIGHT)
    global text1
    global text2
def dump(self):

    z=(text1.get())
    a=(text2.get())

以上是关于'get'返回空值python [duplicate]的主要内容,如果未能解决你的问题,请参考以下文章

python字典的基本操作

python http请求时使用GET返回成功,使用POST却返回失败

关于Python:get语句的问题?

python 时间 空值如何写入数据库

python tkinter 用Toplevel建立子窗口,Entry.get返回为空?

Python 字典(dic)操作