如何在 Tkinter 中同时显示多个 Canvas?

tkinterpythongui-programming更新于 2024/2/4 21:32:17

Canvas 小部件是 Tkinter 中的多功能小部件之一,用于在应用程序中创建插图、绘制形状、弧线、图像和其他复杂布局。要创建 Canvas 小部件,您需要创建 canvas(root, **options) 的构造函数。

您可以使用工厂函数在画布中创建文本、图像、弧线和定义其他形状。在某些情况下,如果您想使用同一个画布创建另一个画布以保持应用程序工作流程的一致性,那么您可以创建一个按钮来调用创建另一个画布的事件。

为了理解这一点,让我们创建一个画布和一个按钮来打开另一个画布来更新主画布小部件。

示例

# 导入所需的库
from tkinter import *
from tkinter import ttk

# 创建 tkinter 窗口的实例
win = Tk()
win.geometry("700x350")

# 创建样式类的实例
style=ttk.Style(win)

def open_new_win():
   top=Toplevel(win)
   canvas1=Canvas(canvas, height=180, width=100, bg="#aaaffe")
   canvas1.pack()
   Label(canvas1, text="You can edit this text", font='Helvetica 18 bold').pack()

# 创建一个画布小部件
canvas=Canvas(win, height=400, width=300)
canvas.pack()

# 创建一个按钮小部件
button=ttk.Button(canvas, text="Open Window", command=open_new_win)
button.pack(pady=30)

win.mainloop()

输出

运行上述代码将显示一个带有按钮的窗口,用于打开另一个画布窗口。​​

单击按钮时,它将在主画布窗口上显示一条消息。


相关文章


有用资源