Exemplos de Python Tkinter

Exemplos De Python Tkinter



Python é uma linguagem de programação versátil que pode ser usada para implementar diferentes tipos de aplicativos. Possui vários tipos de módulos para criar aplicativos baseados em GUI (Graphical User Interface). Python tkinter é um deles. Qualquer aplicativo de desktop pode ser implementado facilmente usando o módulo tkinter. Será melhor se você tiver um conhecimento básico de programação Python para aprender os usos do módulo Python tkinter. Diferentes usos do módulo Python tkinter para criar aplicativos GUI são mostrados neste tutorial.

Instale o Módulo Tkinter

O módulo tkinter não está instalado no Python por padrão. Portanto, você deve executar o seguinte comando para instalar o módulo tkinter na versão Python 3+:







$ sudo apto instalar python3-tk



Diferentes widgets Tkinter

O módulo tkinter contém vários widgets para diversos fins.







Nome do widget Propósito
Rótulo É usado para exibir a mensagem de ajuda ao usuário.
Botão É usado para adicionar diferentes botões no aplicativo.
Quadro Funciona como um contêiner de widgets que contém diferentes tipos de widgets para criar um formulário organizado.
Entrada É usado para obter um texto de linha única do usuário.
Botão de verificação É usado para adicionar botões de caixa de seleção para receber várias entradas do usuário em várias opções.
Botao de radio Ele é usado para adicionar botões de opção para receber uma única entrada do usuário a partir de várias opções.
Botão caixa de combinação É usado para adicionar uma lista suspensa para obter uma única entrada do usuário a partir de várias opções.
Caixa de listagem É usado para adicionar uma caixa de listagem para receber várias entradas do usuário a partir de várias opções.
Texto É usado para obter um texto de várias linhas do usuário.
Mensagem É usado para exibir a janela de mensagens para o usuário.
Barra de rolagem É usado para adicionar uma barra de rolagem na janela para rolar a janela para cima e para baixo.
Botão de menu É usado para exibir o menu ao usuário.
Cardápio É usado para exibir os itens do menu ao usuário.
Janela Panorâmica Funciona como um contêiner de widgets que contém os painéis horizontais e verticais.
Guias É usado para adicionar uma janela de guia no aplicativo.

Diferentes exemplos de Tkinter

Os usos de alguns widgets tkinter comuns são mostrados nos exemplos a seguir.

Exemplo 1: Crie um aplicativo GUI simples

Crie um arquivo Python com o seguinte conteúdo que exibe uma caixa de diálogo no centro da tela com um título e altura e largura específicas:



#Importar módulo necessário
da importação do tkinter *

#Criar objeto para a janela
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Aprenda o módulo tkinter' )

#Defina a altura e largura da janela
tkobj.geometria ( '300x150' )

#Defina a posição de exibição da janela centralmente
tkobj.eval ( 'tk::PlaceWindow . Centro' )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

A seguinte saída aparece após a execução do script. Uma caixa de diálogo com o título “Aprenda o módulo tkinter” é exibida:

Exemplo 2: Uso de rótulo e botão

Crie um arquivo Python com o seguinte script que exibe uma janela com um rótulo e uma caixa de diálogo:

#Importar módulo necessário
da importação do tkinter *

#Crie um objeto para a janela
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Aprenda o módulo tkinter' )

#Defina a altura e largura da janela
tkobj.geometria ( '400x150' )

#Define objeto de rótulo
lbl = Rótulo ( tkobj, texto = 'É uma janela simples' )
#Adicione rótulo à janela
lbl.pack ( iPadX = 30 , iPad = vinte )

#Definir objeto de botão
btn = Botão ( tkobj, texto = 'Clique em mim' )
#Adicionar botão à janela com a posição
btn.pack ( iPadX = 30 , iPad = 10 )

#Defina a posição de exibição da janela centralmente
tkobj.eval ( 'tk::PlaceWindow . Centro' )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

Uma janela com um rótulo e um botão aparece no centro da tela após a execução do script.

Exemplo 3: Defina a cor da fonte e a cor de fundo

Crie um arquivo Python com o seguinte script que exibe uma janela com um rótulo e um botão colorido. Aqui, o atributo background é usado para definir a cor de fundo do botão e o atributo foreground é usado para definir a cor da fonte do botão:

#Importar módulo necessário
da importação do tkinter *

#Crie um objeto para a janela
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Aprenda o módulo tkinter' )

#Defina a altura e largura da janela
tkobj.geometria ( '400x150' )

#Define objeto de rótulo
lbl = Rótulo ( tkobj, texto = 'Definir cor de fundo e de primeiro plano' )
#Adicione rótulo à janela
lbl.pack ( iPadX = 30 , iPad = vinte )

#Define objeto de botão com cor de fundo e primeiro plano
btn = Botão ( tkobj, texto = 'Clique em mim' , fundo = 'azul' , primeiro plano = 'vermelho' )
#Adicionar botão à janela com a posição
btn.pack ( iPadX = 30 , iPad = 8 )

#Defina a posição de exibição da janela centralmente
tkobj.eval ( 'tk::PlaceWindow . Centro' )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

A seguinte janela aparece após a execução do script:

Exemplo 4: Uso de Frame

No script Python a seguir, um rótulo e dois botões são mostrados em um widget de quadro. Crie um arquivo Python com o script para verificar a saída:

#Importar módulo necessário
da importação do tkinter *

#Crie um objeto para a janela
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Módulo tkinter' )

#Defina a altura e largura da janela
tkobj.geometria ( '250x100' )

#Definir objetos de quadro
frm = Quadro ( tkobj )
frm.pack ( )
lframe = Quadro ( tkobj )
lframe.pack ( lado =ESQUERDA )
rframe = Quadro ( tkobj )
rframe.pack ( lado =DIREITA )

#Define rótulo dentro do quadro
lbl = Rótulo ( de, texto = 'Uso de moldura' , fg = 'azul' )
lbl.pack ( )

#Define botões dentro do quadro
btn1 = Botão ( quadro, texto = '' , fg = 'preto' , obrigado = 'branco' )
btn2.pack ( lado =DIREITA )

#Defina a posição de exibição da janela centralmente
tkobj.eval ( 'tk::PlaceWindow . Centro' )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

A seguinte saída aparece após a execução do script:

Exemplo 5: Lidar com o Evento de Botão

O uso da caixa de mensagem é mostrado no script a seguir. A caixa de mensagem é exibida quando um botão é clicado:

#Importar módulos necessários
da importação do tkinter *
da caixa de mensagens de importação do tkinter

#Crie um objeto para a janela
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Aprenda o módulo tkinter' )

#Defina a altura e largura da janela
tkobj.geometria ( '400x150' )

#Defina uma função para exibir uma caixa de mensagem
exibição definida ( ) :
caixa de mensagens.showinfo ( 'Informação' , 'O botão foi clicado.' )

#Crie texto de etiqueta com cor, estilo e posição da fonte
Rótulo ( tkobj, texto = 'Aplicativo de desktop usando tkinter.' , fg = 'verde' ) .pacote ( Arroz = 25 )

#Crie um botão com um manipulador de botão
Botão ( tkobj, texto = 'Mostrar mensagem' , comando =exibição ) .pacote ( )

#Defina a posição de exibição da janela centralmente
tkobj.eval ( 'tk::PlaceWindow . Centro' )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

A seguinte janela aparece após a execução do script:

A seguinte caixa de mensagem aparece após pressionar o botão:

Exemplo 6: obtenha uma opinião do usuário

Vários widgets estão disponíveis no módulo tkinter para receber informações do usuário. Os usos dos widgets mais comuns são mostrados no script a seguir. Crie um arquivo Python com o seguinte código para verificar a saída:

#Importar módulos necessários
da importação do tkinter *
de tkinter.ttk importar Combobox
de tkinter importar ttk
importar tkinter como obrigado
da caixa de mensagens de importação do tkinter

#Criar objeto tkinter
tkobj = Tk ( )

#Defina o título da janela
tkobj.title ( 'Formulário de informações do usuário' )

#Defina a altura e largura da janela
tkobj.geometria ( '550x320' )

#Defina uma função para exibir os valores do formulário
def display_values ( ) :
#Leia o texto de uma linha
nome = 'Nome : ' + nome_val.get ( ) + ' \n '
#Leia o valor do botão de opção selecionado
se gênero.get ( ) == 1 :
g = 'Macho'
outro:
g = 'Fêmea'
g = 'Gênero : ' +g + ' \n '

#Leia os valores da caixa de seleção selecionada
jogo = ''
se g1.get ( ) == 1 :
jogo = 'Grilo'
se g2.get ( ) == 1 :
se jogo ! = '' :
jogo += ',' + 'Futebol'
outro:
jogo = 'Futebol'
se g3.get ( ) == 1 :
se jogo ! = '' :
jogo += ',' + 'Basquetebol'
outro:
jogo = 'Basquetebol'
jogo = 'Jogo : ' + jogo + ' \n '

#Leia os valores da caixa de combinação
país = 'País : ' + paísVal.get ( ) + ' \n '
#Leia o texto multilinha
endereço = 'Endereço : ' + endereço.get ( '1,0' , 'fim' ) + ' \n '
#Mesclar todos os valores obtidos pelos campos
form_values ​​= nome + g + jogo + país + endereço
#Exibe os valores na caixa de mensagem
caixa de mensagens.showinfo ( 'Detalhes das informações do usuário' , valores_formulários )


#Crie um rótulo e o campo de nome
Rótulo ( tkobj, texto = 'Nome : ' ) .lugar ( x = 100 , e = vinte )
nome_val = StringVar ( )
ttk.Entrada ( tkobj, variável de texto =nome_val ) .pacote ( Padx = 220 , Arroz = vinte )

#Crie um rótulo e o botão de opção
Rótulo ( tkobj, texto = 'Gênero : ' ) .lugar ( x = 100 , e = 60 )
gênero = IntVar ( )
gênero.set ( 1 )
Botao de radio ( tkobj, texto = 'Macho' , variável =gênero, valor = 1 ) .lugar ( x = 210 , e = 60 )
Botao de radio ( tkobj, texto = 'Fêmea' , variável =gênero, valor = 2 ) .lugar ( x = 290 , e = 60 )

#Crie um rótulo e um botão de caixa de seleção
Rótulo ( tkobj, texto = 'Jogo favorito : ' ) .lugar ( x = 100 , e = 100 )
g1 = IntVar ( )
g2 = IntVar ( )
g3 = IntVar ( )
Botão de verificação ( tkobj, texto = 'Grilo' , variável =g1 ) .lugar ( x = 210 , e = 100 )
Botão de verificação ( tkobj, texto = 'Futebol' , variável =g2 ) .lugar ( x = 290 , e = 100 )
Botão de verificação ( tkobj, texto = 'Basquetebol' , variável =g3 ) .lugar ( x = 380 , e = 100 )

#Define valores de tupla
dados = ( 'Bangladesh' , 'Japão' , 'EUA' )
#Criar rótulo e caixa de combinação
Rótulo ( tkobj, texto = 'País : ' ) .lugar ( x = 100 , e = 140 )
paísVal = StringVar ( )
Caixa combo ( tkobj, valores =dados, variável de texto =paísVal ) .lugar ( x = 220 , e = 140 )

#Criar rótulo e campo de texto
Rótulo ( tkobj, texto = 'Endereço : ' ) .lugar ( x = 100 , e = 180 )
endereço = ( tk.Texto ( tkobj, altura = 3 , largura = vinte ) )
endereço.place ( x = 220 , e = 180 )

#Crie um botão com um manipulador de botão
Botão ( tkobj, texto = 'Enviar' , comando = valores_de exibição ) .lugar ( x = 250 , e = 250 )

#Execute o Tkinter
tkobj.mainloop ( )

Saída:

A seguinte janela aparece após a execução do script:

Preencha os campos do formulário e clique no botão “Enviar”.

A seguinte caixa de mensagem com os valores enviados aparecerá:

Conclusão

Os métodos de uso do módulo Python tkinter para criar aplicativos GUI são mostrados neste tutorial usando vários exemplos.