Location Research Breakthrough Possible @S-Logix pro@slogix.in

How to Create Canvas and Frame in GUI using Python?

Create Canvas and Frame in GUI using Python

Condition for Creating Canvas and Frame in GUI using Python

  • Canvas: A widget used for drawing shapes, displaying images, or creating custom graphics.Allows for free-form drawing and manipulation of 2D graphics.
  • Frame: A container widget used to group other widgets together.Helps organize the layout of the GUI by grouping related widgets into sections.
Step-by-Step Process
  • Setting Up Tkinter: Import the tkinter module and initialize the main application window using Tk().
  • Creating a Frame: Use Frame to create a container widget.Attach it to the main window or another parent widget.
  • Canvas: Creating a Use Canvas to create a drawing area.Attach it to the main window or inside a frame for better organization.
  • Adding Shapes or Widgets to the Canvas: Use Canvas methods like .create_line(), .create_rectangle(), .create_text(), or .create_image().
  • Define actions: Write functions to handle user interactions (e.g., button clicks).
  • Packing or Gridding the Widgets: Use .pack() or .grid() to position the Frame and Canvas.
Sample Code
  • import tkinter as tk
    root = tk.Tk()
    root.title("Canvas and Frame Example")
    root.geometry("400x300")
    frame = tk.Frame(root, bg="lightblue", width=400, height=100)
    frame.pack(side="top", fill="x")
    label = tk.Label(frame, text="This is a Frame", bg="lightblue", font=("Arial", 14))
    label.pack(pady=20)
    canvas = tk.Canvas(root, bg="white", width=400, height=200)
    canvas.pack(side="bottom", fill="both", expand=True)
    canvas.create_rectangle(50, 50, 150, 150, fill="red", outline="black")
    canvas.create_oval(200, 50, 300, 150, fill="blue", outline="black")
    canvas.create_line(50, 200, 350, 200, fill="green", width=3)
    root.mainloop()
Screenshots
  •  Canvas and Frame in GUI