python - 我正在为我的应用程序构建一个 GUI,但出现错误。为什么?
问题描述
我正在尝试使用 tkinter 为我的应用程序制作 GUI,但它不起作用。为什么?该程序需要从用户那里获取 2 个输入并将它们保存在变量中,我还在下面的代码中标记了错误的位置
import tkinter as tk
# making the window
root = tk.Tk()
root.title("AutoWhatsUp")
root.geometry('500x500')
# getting phone number from user
enter_number = tk.Label(root, text = "enter below the phone number you want to message")
enter_number.pack()
filed = tk.Entry(root)
filed.pack()
def get_number():
phone_num = filed.get()
done_procces_phone = tk.Label(root, text = 'Phone number procced!').pack() # getting error here
confirm_number = tk.Button(root, text = 'procces number', command = get_number).pack() #getting error here
# getting the message
enter_mess = tk.Label(root, text = 'enter below the message').pack() #getting error here
enter_mess_here = tk.Entry(root).pack() #getting error here
def getting_message():
message_here = enter_mess_here.get()
print(message_here)
done_procces_mess = tk.Label(root, text = "done!").pack() #getting error here
get_mess = tk.Button(root, text = "procces message", command = getting_message).pack() #getting error here
root.mainloop()
解决方案
你的问题是你把 None 放在你的变量中enter_mess_here
:
enter_mess_here = tk.Entry(root).pack() #getting error here
在你的函数中,当你想获得价值时,它并没有从中获得价值,而是从无中获得价值Entry
。所以它会引发一个错误。
首先将您分配Entry
给一个变量,然后使用pack
,这样就可以了:
enter_mess_here = tk.Entry(root)
enter_mess_here.pack()
推荐阅读
- android - 如何在 Android 8 上使用 Fragment 过渡(API 26,Oreo)
- css - 孩子如何在不超过父母的情况下达到最大高度?
- javascript - 异步管道在非常简单的 Angular 应用程序中不起作用
- scala - spark中修改countByKey
- python - 提取一段文本
标签
- javascript - 在 JavaScript 代码中在 Google 地图中添加更多具有不同位置的标记
- sql - 需要帮助根据模式从数组或行中查找循环
- javascript - 如何在 JQuery 1.10.2 Ajax 变量中获取隐藏的输入值?
- javascript - 从前端发送电子邮件,由 cronjob 触发(使用 NightwatchJS?)
- python - Keras 中的随机 ReLU