PySimpleGUI Calculator – #04 Calculator Operators

Posted by


Neste tutorial, vamos continuar explorando a Calculadora PySimpleGUI, focando nos operadores matemáticos que podemos usar para realizar operações de adição, subtração, multiplicação e divisão. Vamos ver como implementar essas funcionalidades em nossa calculadora.

A Calculadora PySimpleGUI é uma ferramenta poderosa que nos permite criar interfaces gráficas de usuário (GUI) de forma simples e intuitiva, utilizando a biblioteca PySimpleGUI. Com ela, podemos criar uma calculadora com uma interface atraente e funcionalidades avançadas.

Para começar, certifique-se de ter o PySimpleGUI instalado em seu ambiente Python. Você pode instalá-lo utilizando o comando pip install PySimpleGUI. Em seguida, crie um novo arquivo Python e importe a biblioteca PySimpleGUI:

import PySimpleGUI as sg

Agora, vamos definir o layout da nossa calculadora, com os botões numéricos, operadores e a área de exibição dos resultados. Aqui está um exemplo de layout básico para nossa calculadora:

layout = [
    [sg.Input(size=(15, 1), key='-DISPLAY-')],
    [sg.Button('7'), sg.Button('8'), sg.Button('9'), sg.Button('+')],
    [sg.Button('4'), sg.Button('5'), sg.Button('6'), sg.Button('-')],
    [sg.Button('1'), sg.Button('2'), sg.Button('3'), sg.Button('*')],
    [sg.Button('C'), sg.Button('0'), sg.Button('='), sg.Button('/')]
]

Neste layout, temos um campo de entrada para exibição dos números e resultados, botões numéricos de 0 a 9, além de botões para os operadores de adição (+), subtração (-), multiplicação (*) e divisão (/). Também incluímos um botão ‘C’ para limpar o campo de entrada e um botão ‘=’ para realizar o cálculo.

Agora, vamos criar a janela da nossa calculadora e associar um callback para processar os eventos dos botões. Para isso, utilizaremos um loop que ficará aguardando por eventos na janela:

window = sg.Window('Calculadora', layout)

while True:
    event, values = window.read()

    if event == sg.WIN_CLOSED:
        break

    if event in '1234567890':
        window['-DISPLAY-'].update(values['-DISPLAY-'] + event)

    if event in ['+', '-', '*', '/']:
        window['-DISPLAY-'].update(values['-DISPLAY-'] + ' ' + event + ' ')

    if event == '=':
        try:
            result = eval(values['-DISPLAY-'])
            window['-DISPLAY-'].update(result)
        except:
            window['-DISPLAY-'].update('Erro')

    if event == 'C':
        window['-DISPLAY-'].update('')

Neste código, capturamos o evento de cada botão e atualizamos o campo de exibição de acordo com a operação escolhida. Quando o botão ‘=’ é pressionado, realizamos o cálculo da expressão digitada no campo de entrada e exibimos o resultado. Se houver algum erro na expressão, mostramos a mensagem ‘Erro’. O botão ‘C’ limpa o campo de entrada.

Agora, junte tudo em um único script e execute o programa. Você terá uma calculadora funcional com os operadores de adição, subtração, multiplicação e divisão. Experimente digitar diferentes expressões matemáticas e veja o resultado sendo exibido na tela.

Espero que este tutorial tenha sido útil para você entender como implementar os operadores matemáticos em sua Calculadora PySimpleGUI. Continue explorando as possibilidades dessa ferramenta e criando interfaces incríveis!

0 0 votes
Article Rating
6 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@charleslima8896
3 months ago

Só não entendi usar termos em inglês ao invés de português já q estamos em terra tupiniquins

@josecosta3878
3 months ago

Professor ótimo. Aproveita sua facilidade pra explicar e faz um curso sobre esse pysimplegui na udemy. Tem poucos são fracos os que achei. Tempão que tô procurando como colocar funções na janela. Obrigado

@no-name2599
3 months ago

nossa cara como eu te amo

@erikmartins8146
3 months ago

No meu codigo esta pedindo Explicit return in _init_ Python(return-in-init)

@kbrunot13
3 months ago

Quando vc definio a funcao do "="

@vanilsonsilva4349
3 months ago

Topp demaiss