Em algumas situações nós queremos criar setas, ou seja, linhas com seta no Tkinter. Para isso nós podemos usar a função create_line() do objeto Canvas e fornecer os valores first, last ou both para o argumento arrow da função.
O valor first exibe uma seta no ínício da linha, ou seja, nas coordenadas iniciais. O valor last posiciona a seta no fim da linha e o valor both exibe duas setas: uma no início e outro no fim da linha.
Veja o código completo para uma aplicação Tkinter demonstrando essa técnica:
# vamos importar o módulo tkinter
import tkinter as tk
# método principal
def main():
# 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=450,background='white')
canvas.grid(row=0, column=0)
# vamos criar uma linha na cor azul e seta no início
cor_linha = "blue"
canvas.create_line(50, 50, 350, 50, arrow='first', fill=cor_linha, width=1)
# vamos criar uma linha na cor preta e seta no final
cor_linha = "black"
canvas.create_line(50, 100, 350, 100, arrow='last', fill=cor_linha, width=1)
# vamos criar uma linha na cor vermelha e setas no início e final
cor_linha = "red"
canvas.create_line(50, 150, 350, 150, arrow='both', fill=cor_linha, width=1)
# agora entramos no loop da aplicação, aguardando eventos
janela_principal.mainloop()
if __name__== "__main__":
main()
|