这个代码里,我没有办法让用户输入,请修订。
时间: 2024-03-14 11:43:24 浏览: 9
好的,您可以在MyDialog类中添加一个按钮,当用户点击该按钮时,触发一个事件,弹出一个输入对话框,让用户输入内容。以下是修订后的代码:
```
import tkinter as tk
import tkinter.simpledialog as sd
class MyDialog(sd.SimpleDialog):
def __init__(self, parent, x, y):
super().__init__(parent, title="My Dialog")
self.x = x
self.y = y
def show(self, *args):
super().show(*args)
self.geometry("+{}+{}".format(self.x, self.y))
# 添加一个按钮,用于触发输入对话框
button = tk.Button(self, text="输入", command=self.show_input_dialog)
button.pack(side="bottom", padx=10, pady=10)
def show_input_dialog(self):
# 弹出一个输入对话框,让用户输入内容
value = sd.askstring("输入", "请输入内容:")
if value is not None:
print("您输入的内容是:", value)
root = tk.Tk()
# 创建 SimpleDialog 对象,并指定位置参数
MyDialog(root, 300, 200)
root.mainloop()
```
在这个修订后的代码中,我们首先在MyDialog类的show()方法中添加了一个按钮,用于触发输入对话框。然后,我们定义了一个名为show_input_dialog()的方法,用于弹出输入对话框,让用户输入内容。在这个方法中,我们调用了tkinter库的askstring()函数,弹出一个输入对话框,并将用户输入的内容保存在value变量中。最后,我们在控制台输出用户输入的内容。
需要注意的是,这个修订后的代码只是一个示例,您可以根据自己的需求进行修改和扩展。