Light | Dark |
---|---|
Calculadora desenvolvida em Python usando PySide6. O projeto simula a calculadora do Windows no estilo e na lógica.
Para instalar o projeto corretamente na sua máquina, é necessário ter instalado:
- Python 11 ou inferior;
- Pyside6;
- pyqtdarktheme.
É possível instalar as bibliotecas individualmente ou pelo arquivo requirements.txt dentro do repositório, para isso faça um clone do repositório e em seu terminal digite o comando:
pip install -r .\requirements.txt
Este comando irá instalar todas as dependências necessárias para o projeto funcionar. Lembrando que a versão do Python precisa ser no máximo a versão 11, porque algumas bibliotecas utilizadas ainda não dão suporte para o Python 12, pelo menos até o momento atual da criação desse readme :)
O projeto é dividido em 4 partes.
Na raiz do projeto tem o arquivo main.py, nele todas as classes são integradas e é o arquivo que deve ser executado.
Na pasta modules, é armazenada os módulos e classes que compõem a calculadora, sendo que:
appWindow.py
- QMainWindow do projeto, que é o container principal da calculadora;
- Nesse projeto não foi utilizado o Qt Designer, todo layout foi feito manualmente.
buttons.py
- Classe dos botões e layout dos botões;
- Toda lógica de Slots e connect dos botões ou teclas estão nessa classe.
display.py
- Classe do display da calculadora;
- Faz o emit da teclas do teclado.
operationsText.py
- Classe que auxilia as operações;
- Texto que aparece em cima do display.
Por último, a pasta utils, que armazena funções de segurança para a aplicação, caminhos para a imagem de ícone e toda a lógica do tema da calculadora. Lembrando que as cores do tema foram modificadas, especialmente na função setupTheme:
É possível realizar as operações pelas teclas do teclado, os comandos são:
Atalhos
:Enter, Return, =
: Exibe o resultadodelete, backspace, d
: Remove um elemento do displayescape, c
: Limpar toda a operação+, -, /, *, p
: Realiza operações
Vale mencionar que dependendo do teclado utilizado algumas funções podem ser diferentes.
Python:
Bibliotecas usadas: