tkinter实现弹窗
时间: 2023-07-13 17:21:52 浏览: 100
可以使用tkinter库中的Toplevel组件来实现弹窗。以下是一个简单的弹窗示例:
```python
import tkinter as tk
class PopupWindow(tk.Toplevel):
def __init__(self, parent, message):
super().__init__(parent)
self.title("弹窗")
self.geometry("200x100")
self.resizable(False, False)
self.message = message
self.create_widgets()
def create_widgets(self):
label = tk.Label(self, text=self.message, padx=20, pady=20)
label.pack(fill=tk.BOTH, expand=True)
button = tk.Button(self, text="关闭", command=self.destroy)
button.pack(side=tk.BOTTOM, pady=10)
# 测试弹窗
root = tk.Tk()
button = tk.Button(root, text="点击弹窗", command=lambda: PopupWindow(root, "这是一个弹窗").grab_set())
button.pack(pady=20)
root.mainloop()
```
在这个例子中,我们定义了一个`PopupWindow`类,它继承自`Toplevel`,并且在初始化时接受一个`parent`和一个`message`参数。`create_widgets`方法用于创建弹窗中的组件,包括一个`Label`来显示信息和一个`Button`用于关闭弹窗。在`PopupWindow`创建完成后,我们可以使用`grab_set`方法来使弹窗获取焦点。这样,用户就不能操作主窗口,只能操作弹窗,直到关闭弹窗为止。
阅读全文