我是靠谱客的博主 高兴流沙,最近开发中收集的这篇文章主要介绍关于python中Tkinter在窗口中新建窗口,get方法无法获取到Entry中的内容(获取为空)的解决方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

最近在学习python的过程中,想着把学习中的一个学员管理系统案例从TUI改成GUI界面,在添加学员信息的时候,发现无法在新的窗口中获取到输入框Entry当中输入的内容,输入什么都会获取为空,原代码如下

import tkinter
import tkinter.messagebox
from student import *


class StudentManager(object):
    def __init__(self):
        # 存储学员数据
        self.student_list = []
        self.student_manager = tkinter.Tk()
        self.student_manager.title('学员信息管理系统')
        self.student_manager.geometry('600x500')

    def add_student(self):
        def bc():
            ret = tkinter.messagebox.askokcancel(title='提交学员信息', message='是否确认提交?')
            students = Student(e1.get(), e2.get(), e3.get())
            if ret:
                tkinter.messagebox.showinfo(title='提示', message='学员信息提交成功')
                self.student_list.append(students)
                add_students.destroy()
            else:
                tkinter.messagebox.showinfo(title='提示', message='学员信息取消提交')
                add_students.destroy()
        add_students = tkinter.Tk()  # 此处要修改!!!!!!
        add_students.title('添加学员')
        add_students.geometry('250x150')
        lab = tkinter.Label(add_students, text='学员姓名')
        lab1 = tkinter.Label(add_students, text='学员性别')
        lab2 = tkinter.Label(add_students, text='学员电话')
        lab.grid(row=0, column=0)
        lab1.grid(row=1, column=0)
        lab2.grid(row=2, column=0)
        e1 = tkinter.StringVar()
        e2 = tkinter.StringVar()
        e3 = tkinter.StringVar()
        entry = tkinter.Entry(add_students, textvariable=e1)
        entry1 = tkinter.Entry(add_students, textvariable=e2)
        entry2 = tkinter.Entry(add_students, textvariable=e3)
        entry.grid(row=0, column=1)
        entry1.grid(row=1, column=1)
        entry2.grid(row=2, column=1)
        bt = tkinter.Button(add_students, text='提交保存', command=bc)
        bt.grid(row=3, column=1)
        add_students.mainloop()

只需要把代码中,注释指明需要修改那一行,将Tk改为Toplevel即可。

最后

以上就是高兴流沙为你收集整理的关于python中Tkinter在窗口中新建窗口,get方法无法获取到Entry中的内容(获取为空)的解决方法的全部内容,希望文章能够帮你解决关于python中Tkinter在窗口中新建窗口,get方法无法获取到Entry中的内容(获取为空)的解决方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(37)

评论列表共有 0 条评论

立即
投稿
返回
顶部