Criando uma interface gráfica com Python
Na linguagem Python existe ao menos meia dúzia de bibliotecas para criação de interfaces com o usuário de um programa. Mas, vamos por ora nos ater somente à sua biblioteca padrão Tkinter. Essa biblioteca é nativa, vem junto com a instalação do interpretador Python no seu computador; portanto não é necessária qualquer instalação prévia para começar a usá-la; temos somente que importá-la logo no início de nosso script, como fizemos acima.
Antes de tudo cabe aqui uma breve descrição de alguns conceitos básicos sobre interfaces gráficas com o usuário, as chamadas GUIs. E lembrando sempre que: tudo no Python são objetos!
Container – uma alusão aos containers de navios, é um local delimitado onde podemos dispor objetos, os widgets;
Widgets – são componentes gráficos dentro do nosso container; são botões, chaves, caixas de textos, ícones e outros objetos;
Event Handlers – tratadores de eventos; são funções e métodos que são acionados somente quando por exemplo clicamos num botão;
Event Loops – Laços de eventos; são scripts que ficam sendo executados o tempo todo à espera de um determinado evento; por exemplo, um contador de segundos.
Cremos que podemos comparar um container a uma placa de circuito impresso montada, onde os resistores, capacitores, transistores e LEDs são os widgets; os tratadores de eventos poderiam ser similarmente os botões e chaves mecânicas na placa; e os laços de repetição os diferentes circuitos ativos montados na placa; como amplificadores operacionais e portas lógicas digitais.
A biblioteca Tkinter (Tk + interface) na linguagem Python foi inspirada na biblioteca Tk de uma linguagem de programação de computadores, criada por um professor da Universidade da Califórnia nos EUA em 1988, a Tcl (Tool Command Language). Essa biblioteca se mostrou tão fácil de aprender e utilizar que logo foi implementada em muitas outras linguagens, como Python, Perl, Ruby e outras.
Vamos começar rascunhando numa folha de papel o layout da interface gráfica que temos em mente. Digamos que queremos criar o painel de uma simples calculadora da frequência de um oscilador astável com o cinquentenário circuito integrado LM-555. Essa calculadora vai nos dizer qual a frequência de oscilação dados os valores dos componentes do circuito.