Soy auto -enseñanza Python (¡lentamente!) Y he construido un programa básico de pintura donde se puede cambiar el "color" del pincel y eso es todo ... ¿Las cajas de clics se pueden dibujar y querían ver si era posible hacer de este un área donde no se puede dibujar? ¡También estoy buscando tener opciones adicionales en el tamaño de 'cepillo' de tamaño y inserto de forma, por lo que se agradecería cualquier sugerencia y consejo sobre esto!
import tkinter print("To draw, hold down the left mouse button and move the cursor.") print("To change the brush colour, click on one of the colours.") window = tkinter.Tk() canvas = tkinter.Canvas(window, width = 800, height = 600, bg = "white") canvas.pack() lastX, lastY = 0,0 colour = "black" def store_position(event): Global LastX, Lasty LastX = Event.x Lasty = Event.y def on_click (event): store_position (event) def on_drag (event): canvas.create_line (lastx, lasty, event.x, event.y, relleno = color, width = 3) store_position (event) canvas.bind ("", on_click) canvas.bind ("", "", "", "", "") Red) Canvas canvas.create_rectangle (10, 10, 30, 30, relleno = "rojo") blue_id = canvas.create_rectangle (10, 35, 30, 55, relleno = "blue") black_id = canvas.create_rectangle (10, 60, 30, 80, relleno = "negro") white_id = canvas "White") cyan_id = canvas.create_rectangle (10, 110, 30, 130, relleno = "cyan") amarillo_id = canvas.create_rectangle (10, 135, 30, 155, relleno = "amarillo") green_id = canvas.create_rectangle (10, 160, 180, llena = "verde") Definter "Red" def set_colour_blue (evento): color global color = "azul" def set_colour_black (evento): color global color = "negro" def set_colour_white (event): global color color = "white" def set_colour_cyan (event): global color = "cyan" def set_colour_ylello color global color = "verde" canvas.tag_bind (rojo_id, "", set_colour_red) canvas.tag_bind (blue_id, "", set_colour_blue) canvas.tag_bind (black_id, "", set_colour_black) Canvas.tag_bind (white_id, ", set_colour) Canvas.tag_bind (cyan_id, "", set_colour_cyan) canvas.tag_bind (amarillo_id, "", set_colour_yellow) canvas.tag_bind (green_id, "", set_colour_green) ventana.Mainloop ()