Tkinter ComboBox

Tkinter Combobox



O pacote ttk, uma modificação exclusiva do Python Tkinter, apresenta esse componente adicional. O Python Tkinter ComboBox exibe cada opção de um menu suspenso 1 de cada vez. Tem uma aparência contemporânea, tornando-o adequado para locais onde a exposição é crucial. O gadget Entry é uma habilidade de classe do Python ComboBox. Como resultado, ele adiciona algumas opções e funções adicionais enquanto também herda várias da classe Entry.

Um widget crucial que pode ser visto em vários programas é o ComboBox. O usuário recebe uma lista de alternativas para escolher. Tem vários valores, e só exibe um de cada vez. O tutorial de hoje abordará como usar o ComboBox no Linux usando o Tkinter.

Exemplo 1:

Vamos começar com o primeiro exemplo do módulo Tkinter em Python. Criamos um novo arquivo Python com a extensão “py” por meio do console do terminal. Depois disso, você pode usar qualquer editor de sua escolha para abrir o arquivo Python recém-gerado no explorador de arquivos. Iniciamos este código Python com a importação da biblioteca Tkinter no código junto com todos os seus subobjetos, classes e entidades embutidas.







Importamos seu objeto ttk para ser usado no código. Primeiro, chamamos a função Tk() de Tkinter para adicionar um novo valor para o objeto “t”. O objeto “t” é usado para chamar a função de geometria para criar uma interface gráfica do usuário de “200×150”. Dentro deste primeiro exemplo, utilizamos o método “frame()” do Tkinter para criar um quadro GUI na tela do console. O objeto “f” do quadro é fechado aqui usando a função Tkinter pack().



Depois disso, criamos uma lista “l” de tipos de string contendo um total de 5 valores de string. Depois disso, utilizamos o objeto Tkinter ttk para chamar a função ComboBox de Tkinter dentro do quadro “f”. A lista “l” é passada para ele. Este ComboBox é salvo na variável “C”. Definimos o rótulo para o ComboBox usando a função “set” e embalamos o ComboBox com preenchimentos exatos. Agora, executamos a função mainloop() para executar o programa Tkinter geral.







Após concluir o script Python, salvamos o código com Ctrl+S e voltamos ao console shell do sistema Linux. Tentamos a instrução Python3 no shell seguida pelo nome de um arquivo Python para executar o arquivo conforme mostrado a seguir:

$ python3 teste.py



Após a execução da consulta, obtemos a seguinte GUI do Tkinter na tela do console com o título “tk”. A tela GUI contém um comboBox, ou seja, uma lista suspensa, com o título “Choose 1 Color” e um sinal de triângulo para abri-lo.

Depois de tocar no sinal do triângulo, a longa lista suspensa é mostrada com todas as opções disponíveis. Você pode ver que temos um total de 5 opções disponíveis para escolher.

Digamos que você escolha a cor “Preto” na lista suspensa. Você verá que a cor selecionada é mostrada na área de título de uma ComboBox suspensa. A lista restante está oculta.

Exemplo 2:

Vamos dar uma olhada em outro exemplo usando um método diferente para criar um ComboBox no Tkinter desta vez. Assim, iniciamos este código Python com a importação do módulo Tkinter no mesmo arquivo Python que “tk” junto com a importação da classe ttk dele. Depois disso, importamos a função showinfo() da classe message box do módulo Tkinter. Além disso, importamos a variável month_name do módulo calendar do Python.

Chamamos a função tk() com o objeto tk do módulo Tkinter e salvamos o resultado do construtor na variável “t”. A função geometry é chamada com parâmetros especificados para criar uma GUI do Tkinter com um tamanho específico. A função title() é chamada com um parâmetro “Combobox Illustration” para intitular a GUI do Tkinter e a função Label da classe ttk para criar um rótulo “l”. A função pack é utilizada para preencher a etiqueta “l”. A variável “mn” é criada com a função StringVar() da classe “tk”. A ComboBox “mcb” é criada usando a função ComboBox e a variável de texto “mn”. O mcb ComboBox é preenchido com valores de string de até 13 por meio da variável month_name usada no loop “for”.

O estado do ComboBox “mcb” é definido como somente leitura e está empacotado. A função choose() é criada para chamar a função showinfo() para criar uma caixa de diálogo de alerta com o título “Confirmação” e uma mensagem “Você escolheu {qualquer que seja o valor}. A função bind() é chamada com o ComboBox “mcb” adicionando os parâmetros “ComboboxSelected” e a função “change”. A função mainloop() é executada para fazer o loop do programa Tkinter. Vamos salvá-lo primeiro antes de executar.

Executamos este arquivo usando a consulta python3.

$ Pitão 3 teste.py

A seguinte tela Tkinter chamada “ComboBox illustration” aparece a seguir:

Quando clicamos no sinal do triângulo ComboBox abaixo do título “Escolha um mês”, ele mostra os nomes de um mês.

Quando escolhemos “Julho”, aparece na etiqueta e aparece o alerta de diálogo e uma mensagem. Pressione Ok para continuar.

Conclusão

Trata-se de usar o módulo Tkinter do Python para criar um comboBox na janela GUI. Para isso, tentamos dois exemplos simples mas diferentes de Python para atingir o objetivo usando a função frame() e a forma convencional de criar o comboBox na GUI. Incorporamos os códigos de amostra para ambas as instâncias e fizemos algumas alterações após a execução dos códigos.