tkinter有一个toplevel,有一个root窗口。窗口移动时,触发事件do(),在事件中判断该2窗口是否存在?请写详细代码,
时间: 2023-05-10 09:55:26 浏览: 120
好的,以下是代码:
```python
import tkinter as tk
def do(event):
if root.winfo_exists() and toplevel.winfo_exists():
print("Both windows exist.")
else:
print("One or both windows do not exist.")
root = tk.Tk()
toplevel = tk.Toplevel()
root.bind("<Motion>", do)
root.mainloop()
```
这段代码创建了一个根窗口和一个顶层窗口,并在根窗口移动时触发了一个事件。在事件处理程序中,我们使用 `winfo_exists()` 方法检查两个窗口是否存在。如果两个窗口都存在,我们打印出 "Both windows exist.",否则打印出 "One or both windows do not exist."。
相关问题
tkinter第二窗口
您好!对于使用Tkinter创建第二个窗口,您可以按照以下步骤进行操作:
1. 导入Tkinter模块:
```python
import tkinter as tk
```
2. 创建主窗口:
```python
root = tk.Tk()
```
3. 创建第二个窗口函数:
```python
def create_second_window():
second_window = tk.Toplevel(root)
# 在第二个窗口中添加组件或进行其他操作
```
4. 创建按钮来触发创建第二个窗口的函数:
```python
btn = tk.Button(root, text="打开第二个窗口", command=create_second_window)
btn.pack()
```
5. 运行主循环以显示主窗口和响应事件:
```python
root.mainloop()
```
这样,当您点击"打开第二个窗口"按钮时,将会创建并显示第二个窗口。
希望这些信息能对您有所帮助!如果您还有其他问题,请随时提问。
python中在一个界面中定向另一个界面
在Python中,可以使用Tkinter库来创建GUI界面。要在一个界面中打开另一个界面,可以使用Tkinter的Toplevel()函数来创建一个新的顶层窗口。以下是一个简单的示例代码:
```python
import tkinter as tk
class MainApplication(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.pack()
self.create_widgets()
def create_widgets(self):
self.button = tk.Button(self, text="打开新界面", command=self.open_new_window)
self.button.pack()
def open_new_window(self):
new_window = tk.Toplevel(self.master)
new_app = NewApplication(new_window)
class NewApplication(tk.Frame):
def __init__(self, master=None):
super().__init__(master)
self.master = master
self.pack()
self.create_widgets()
def create_widgets(self):
self.label = tk.Label(self, text="这是一个新界面")
self.label.pack()
if __name__ == '__main__':
root = tk.Tk()
app = MainApplication(master=root)
app.mainloop()
```
在这个例子中,我们创建了一个MainApplication类,它包含一个按钮,点击该按钮将触发open_new_window()函数,该函数创建了一个新的顶层窗口,并在其中创建了一个NewApplication实例。
NewApplication类是一个简单的窗口,它包含一个标签,用于显示该窗口是一个新界面。
在创建MainApplication实例时,我们传递了root参数,该参数是Tkinter库中的主窗口。通过调用app.mainloop()函数,我们可以将应用程序设置为等待用户事件,例如单击按钮或关闭窗口。
相关推荐
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![py](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)