##############################################################################
# Parte do livro Introdução à Programação com Python
# Autor: Nilo Ney Coutinho Menezes
# Editora Novatec (c) 2010-2024
# Quarta Edição - Março/2024 - ISBN 978-85-7522-886-9
#
# Site: https://python.nilo.pro.br/
#
# Arquivo: capítulo 13/13.06 - Layout do aplicativo de desenho.py
##############################################################################
import tkinter as tk
import tkinter.ttk as ttk
class App(tk.Tk):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.quadro = ttk.Frame(self)
self.cria_barra()
self.cria_area_de_desenho()
self.title("Desenho")
self.geometry("800x600")
self.quadro.pack(expand=True, fill="both")
def cria_area_de_desenho(self):
self.trabalho = ttk.Frame(self.quadro, height=600)
self.trabalho.grid(column=1, row=0, sticky=tk.NSEW)
self.quadro.grid_columnconfigure(1, weight=1)
self.quadro.grid_rowconfigure(0, weight=1)
self.canvas = tk.Canvas(self.trabalho, background="white")
self.canvas.pack(fill=tk.BOTH, expand=True)
self.canvas.bind("<Motion>", self.mouse_move)
self.coordenadas = tk.Label(self.trabalho, text="Mova o mouse")
self.coordenadas.pack(ipadx=10, ipady=10)
def cria_barra(self):
self.barra = ttk.Frame(self.quadro, width=100, height=600)
self.barra.grid(column=0, row=0, sticky=tk.NS)
def mouse_move(self, event):
self.coordenadas["text"] = f"Mouse x={event.x} y ={event.y}"
App().mainloop()