Python Tkinter – Widget de lienzo

Tkinter es un conjunto de herramientas de GUI utilizado en python para crear GUI fáciles de usar. Tkinter es el marco de GUI más utilizado y más básico disponible en python. Tkinter utiliza un enfoque orientado a objetos para crear GUI.
Nota: Para obtener más información, consulte Python GUI – tkinter

Widget de lienzo

El widget Canvas nos permite mostrar varios gráficos en la aplicación. Se puede utilizar para dibujar desde formas simples hasta gráficos complicados. También podemos mostrar varios tipos de widgets personalizados según nuestras necesidades.

Sintaxis: 

C = Canvas(root, height, width, bd, bg, ..)

Parámetros opcionales: 

  • raíz = ventana raíz.
  • altura = altura del widget de lienzo.
  • ancho = ancho del widget de lienzo.
  • bg = color de fondo del lienzo.
  • bd = borde de la ventana del lienzo.
  • scrollregion (w, n, e, s) tupla definida como una región para desplazarse hacia la izquierda, arriba, abajo y a la derecha.
  • color de resaltado color que se muestra en el resaltado de enfoque.
  • cursor Se puede definir como un cursor para el lienzo que puede ser un círculo, un do, una flecha, etc.
  • confine decide si se puede acceder al lienzo fuera de la región de desplazamiento.
  • tipo de relieve del borde que puede ser HUNDIDO, ELEVADO, RANURADO y CABALLETE. 
     

Algunos métodos de dibujo comunes :

  • Crear un óvalo
 oval = C.create_oval(x0, y0, x1, y1, options)
  • Creando un arco
 arc = C.create_arc(20, 50, 190, 240, start=0, extent=110, fill="red")
  • Crear una línea
 line = C.create_line(x0, y0, x1, y1, ..., xn, yn, options)
  • Crear un polígono
 oval = C.create_polygon(x0, y0, x1, y1, ...xn, yn, options)

Ejemplo 1: dibujo de formas simples 

Python3

from tkinter import *
 
 
root = Tk()
 
C = Canvas(root, bg="yellow",
           height=250, width=300)
 
line = C.create_line(108, 120,
                     320, 40,
                     fill="green")
 
arc = C.create_arc(180, 150, 80,
                   210, start=0,
                   extent=220,
                   fill="red")
 
oval = C.create_oval(80, 30, 140,
                     150,
                     fill="blue")
 
C.pack()
mainloop()

Producción:
 

python-tkinter-canvas

Ejemplo 2: aplicación de pintura simple 

Python3

from tkinter import *
 
 
root = Tk()
 
# Create Title
root.title(  "Paint App ")
 
# specify size
root.geometry("500x350")
 
# define function when 
# mouse double click is enabled
def paint( event ):
    
    # Co-ordinates.
    x1, y1, x2, y2 = ( event.x - 3 ),( event.y - 3 ), ( event.x + 3 ),( event.y + 3 )
     
    # Colour
    Colour = "#000fff000"
     
    # specify type of display
    w.create_line( x1, y1, x2,
                  y2, fill = Colour )
 
 
# create canvas widget.
w = Canvas(root, width = 400, height = 250)
 
# call function when double
# click is enabled.
w.bind( "<B1-Motion>", paint )
 
# create label.
l = Label( root, text = "Double Click and Drag to draw." )
l.pack()
w.pack()
 
mainloop()

Producción: 

python-tkinter-canvas

Publicación traducida automáticamente

Artículo escrito por KaranGupta5 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *