【问题标题】:Python: How to get an entry box within a message box?Python:如何在消息框中获取输入框?
【发布时间】:2013-07-22 03:34:29
【问题描述】:

我刚刚意识到我没有在游戏开始时询问用户的姓名。所以我尝试了这段代码:

 Label(root, text="What is you name?").grid(row=0, column=0)
 e1 = self.Entry(root)
 e1.self.grid(row = 0, column=1)

但它不起作用。

如何在游戏开始时弹出一个消息框,上面写着“欢迎来到数学泡泡,你叫什么名字?”然后用户输入他们的名字并按确定。另一个消息框会弹出说“你好_,按开始按钮开始”。我想保存用户名,以便在获胜者消息框中也可以显示他们的姓名

【问题讨论】:

    标签: python python-3.x tkinter messagebox


    【解决方案1】:

    你可以使用tkinter.simpledialog函数askstring

    from tkinter.simpledialog import askstring
    from tkinter.messagebox import showinfo
    name = askstring('Name', 'What is your name?')
    showinfo('Hello!', 'Hi, {}'.format(name))
    

    【讨论】:

    • 简单而好方法!你知道如何让它适应密码输入对话框吗?
    • 这对我不起作用。我得到:AttributeError:“NoneType”对象没有属性“winfo_viewable”
    【解决方案2】:

    您可以创建一个对话框作为modal 对话框,然后在其中放置一个输入框和一些按钮来处理您的自定义对话框消息并显示它。

    【讨论】:

      猜你喜欢
      • 2013-06-27
      • 1970-01-01
      • 2022-09-27
      • 2022-01-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多