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(top, height=180, width=100, bg="#aaaffe")
canvas1.pack()
Label(canvas1, text="You can modify 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()
आउटपुट
उपरोक्त कोड चलाने से एक बटन वाली विंडो प्रदर्शित होगी जो दूसरी कैनवास विंडो खोलती है।

जब आप बटन पर क्लिक करते हैं, तो यह प्राथमिक कैनवास विंडो पर एक संदेश प्रदर्शित करेगा।
