在tkinter 中实现 没有输入框没有输入字符程序就不会继续
时间: 2024-02-24 10:56:38 浏览: 109
你可以使用 `tkinter.simpledialog.askstring()` 方法来实现这个功能。这个方法会弹出一个对话框,等待用户输入字符串,并返回用户输入的字符串。如果用户点击取消或者直接关闭对话框,则返回 None 值,你可以利用这个返回值来判断用户是否输入了字符串。
以下是一个示例代码,用于演示如何在 Tkinter 中实现“没有输入框没有输入字符程序就不会继续”的功能:
```python
import tkinter as tk
import tkinter.simpledialog as sd
root = tk.Tk()
def get_input():
while True:
result = sd.askstring("Input", "Please enter some text:")
if result is not None and len(result.strip()) > 0:
# 用户输入了非空字符串,可以继续执行程序
print("User input:", result)
break
elif result is None:
# 用户取消了输入,退出程序
print("User cancelled input")
root.destroy()
break
else:
# 用户输入了空字符串,重新提示用户输入
print("Please enter some text")
button = tk.Button(root, text="Get input", command=get_input)
button.pack()
root.mainloop()
```
在这个示例代码中,我们使用 `tkinter.simpledialog.askstring()` 方法来获取用户输入的字符串。在获取用户输入之前,我们通过一个 while 循环来不断询问用户输入,直到用户输入了非空字符串或者取消了输入。如果用户输入了非空字符串,则打印用户输入的字符串并退出循环;如果用户取消了输入,则关闭程序窗口;如果用户输入了空字符串,则提示用户重新输入。
阅读全文