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


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

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

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

示例

# Import required libraries
from tkinter import *
from tkinter import ttk

# Create an instance of tkinter window
win = Tk()
win.geometry("700x350")

# Create an instance of style class
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 modify this text", font='Helvetica 18 bold').pack()

# Create a canvas widget
canvas=Canvas(win, height=400, width=300)
canvas.pack()

# Create a button widget
button=ttk.Button(canvas, text="Open Window", command=open_new_win)
button.pack(pady=30)

win.mainloop()

输出

运行以上代码将显示一个窗口,其中包含一个按钮,用于打开另一个画布窗口。

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

更新于: 2021 年 12 月 22 日

2K+ 次浏览

开启您的 职业生涯

通过完成课程获得认证

开始学习
广告