Você está aqui: Python ::: Tkinter GUI Toolkit ::: Linhas |
Como desenhar uma linha entre dois cliques do mouse usando Tkinter e PythonQuantidade de visualizações: 1075 vezes |
|
Nesta dica mostrarei uma dica valiosa para o desenvolvimento de aplicações do mundo real usando a ferramenta GUI Tkinter e a linguagem Python. Trata-se de uma aplicação na qual usamos a classe Canvas e seu método create_line() para desenhar uma linha entre duas coordenadas na tela. A primeiro coordenada é registrada no primeiro clique no mouse e a segunda coordenada é registrada no segundo clique. Nesta dica mostro também como usar a função bind() para efetuar a chamada ao método desenharLinha() em resposta ao evento do clique do botão esquerdo do mouse no Canvas. Veja o código completo:
# vamos importar o módulo tkinter
import tkinter as tk
# vamos precisar de algumas variáveis globais
quant_cliques = 0
canvas = None
# função quer permite desenhar uma linha entre dois
# cliques do mouse
def desenharLinha(evento):
global quant_cliques # acessamos a variável global
global canvas # acessa o canvas global
global x1, y1, x2, y2
# é o primeiro clique?
if quant_cliques == 0:
x1 = evento.x
y1 = evento.y
quant_cliques = 1
else:
x2 = evento.x
y2 = evento.y
# desenha a linha
canvas.create_line(x1, y1, x2, y2, fill='blue', width=2)
quant_cliques = 0
# método principal
def main():
global click_number
global canvas
# Vamos criar uma instância da classe tk.Tk, que
# cria a janela da aplicação
janela_principal = tk.Tk()
# vamos criar o Canvas
canvas = tk.Canvas(janela_principal, width=600, height=400,background='white')
canvas.grid(row=0, column=0)
canvas.bind('<Button-1>', desenharLinha)
# agora entramos no loop da aplicação, aguardando eventos
janela_principal.mainloop()
if __name__== "__main__":
main()
Execute a aplicação Tkinter e experimente desenhar várias linhas. Você terá resultados semelhantes ao mostrado abaixo: ![]() |
|
|
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







