Belki sizin için çok çok basit bir projedir ancak benim için çok emek isteyen bir proje oldu.
Yaparken de çok keyif aldım. Belki hesap makinesi kullanmak istediğiniz zaman google’a değil de bu hesap makinesine gidersiniz
Projeyi incelemeniz için aşağıya kodlarını yazacağım. Ancak indirmek isterseniz lütfen buradan
indirin —> ** https://www.dosya.tc/server31/wguvu1/hesapmakInesi.rar.html
İndirdikten sonra ve kullanmaya başlamanızdan sonra isterseniz exe’ye çevirirsiniz.
Buradan incelemek istersiniz diye kodları veriyorum şimdi.
“”"""""""""""
Designer Kodları :
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'h_arayüz.ui'
#
# Created by: PyQt5 UI code generator 5.15.1
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class HesapMakinesi(object):
def setupUi(self, HesapMakinesi):
HesapMakinesi.setObjectName("Hesap Makinesi")
HesapMakinesi.resize(417, 465)
self.pushButton = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton.setGeometry(QtCore.QRect(10, 170, 91, 71))
self.pushButton.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton.setObjectName("pushButton")
self.pushButton_2 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_2.setGeometry(QtCore.QRect(100, 170, 91, 71))
self.pushButton_2.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_2.setObjectName("pushButton_2")
self.pushButton_3 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_3.setGeometry(QtCore.QRect(190, 170, 91, 71))
self.pushButton_3.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_3.setObjectName("pushButton_3")
self.pushButton_4 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_4.setGeometry(QtCore.QRect(10, 240, 91, 71))
self.pushButton_4.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_4.setObjectName("pushButton_4")
self.pushButton_5 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_5.setGeometry(QtCore.QRect(100, 240, 91, 71))
self.pushButton_5.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_5.setObjectName("pushButton_5")
self.pushButton_6 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_6.setGeometry(QtCore.QRect(190, 240, 91, 71))
self.pushButton_6.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_6.setObjectName("pushButton_6")
self.pushButton_7 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_7.setGeometry(QtCore.QRect(10, 310, 91, 71))
self.pushButton_7.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_7.setObjectName("pushButton_7")
self.pushButton_8 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_8.setGeometry(QtCore.QRect(100, 310, 91, 71))
self.pushButton_8.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_8.setObjectName("pushButton_8")
self.pushButton_9 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_9.setGeometry(QtCore.QRect(190, 310, 91, 71))
self.pushButton_9.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_9.setObjectName("pushButton_9")
self.pushButton_10 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_10.setGeometry(QtCore.QRect(10, 380, 91, 71))
self.pushButton_10.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_10.setObjectName("pushButton_10")
self.pushButton_11 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_11.setGeometry(QtCore.QRect(190, 130, 91, 41))
self.pushButton_11.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_11.setObjectName("pushButton_11")
self.pushButton_12 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_12.setGeometry(QtCore.QRect(100, 380, 181, 71))
self.pushButton_12.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_12.setObjectName("pushButton_12")
self.pushButton_13 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_13.setGeometry(QtCore.QRect(280, 130, 91, 41))
self.pushButton_13.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_13.setObjectName("pushButton_13")
self.pushButton_14 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_14.setGeometry(QtCore.QRect(10, 130, 91, 41))
self.pushButton_14.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_14.setObjectName("pushButton_14")
self.pushButton_15 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_15.setGeometry(QtCore.QRect(100, 130, 91, 41))
self.pushButton_15.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_15.setObjectName("pushButton_15")
self.pushButton_16 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_16.setGeometry(QtCore.QRect(370, 130, 41, 41))
self.pushButton_16.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_16.setObjectName("pushButton_16")
self.pushButton_17 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_17.setGeometry(QtCore.QRect(280, 310, 131, 71))
self.pushButton_17.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_17.setObjectName("pushButton_17")
self.pushButton_18 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_18.setGeometry(QtCore.QRect(280, 170, 131, 71))
self.pushButton_18.setStyleSheet("font: 75 20pt \"MS Shell Dlg 2\";")
self.pushButton_18.setObjectName("pushButton_18")
self.lineEdit = QtWidgets.QLineEdit(HesapMakinesi)
self.lineEdit.setGeometry(QtCore.QRect(10, 10, 391, 71))
self.lineEdit.setStyleSheet("font: 75 18pt \"MS Shell Dlg 2\";")
self.lineEdit.setObjectName("lineEdit")
self.pushButton_19 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_19.setGeometry(QtCore.QRect(280, 240, 131, 71))
self.pushButton_19.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_19.setObjectName("pushButton_19")
self.label = QtWidgets.QLabel(HesapMakinesi)
self.label.setGeometry(QtCore.QRect(10, 110, 71, 16))
self.label.setObjectName("label")
self.pushButton_20 = QtWidgets.QPushButton(HesapMakinesi)
self.pushButton_20.setGeometry(QtCore.QRect(280, 380, 131, 71))
self.pushButton_20.setStyleSheet("font: 75 14pt \"MS Shell Dlg 2\";")
self.pushButton_20.setObjectName("pushButton_20")
self.label_2 = QtWidgets.QLabel(HesapMakinesi)
self.label_2.setGeometry(QtCore.QRect(90, 110, 281, 16))
self.label_2.setText("")
self.label_2.setObjectName("label_2")
self.retranslateUi(HesapMakinesi)
QtCore.QMetaObject.connectSlotsByName(HesapMakinesi)
def retranslateUi(self, HesapMakinesi):
_translate = QtCore.QCoreApplication.translate
HesapMakinesi.setWindowTitle(_translate("HesapMakinesi", "Form"))
self.pushButton.setText(_translate("HesapMakinesi", "1"))
self.pushButton_2.setText(_translate("HesapMakinesi", "2"))
self.pushButton_3.setText(_translate("HesapMakinesi", "3"))
self.pushButton_4.setText(_translate("HesapMakinesi", "4"))
self.pushButton_5.setText(_translate("HesapMakinesi", "5"))
self.pushButton_6.setText(_translate("HesapMakinesi", "6"))
self.pushButton_7.setText(_translate("HesapMakinesi", "7"))
self.pushButton_8.setText(_translate("HesapMakinesi", "8"))
self.pushButton_9.setText(_translate("HesapMakinesi", "9"))
self.pushButton_10.setText(_translate("HesapMakinesi", "0"))
self.pushButton_11.setText(_translate("HesapMakinesi", "x"))
self.pushButton_12.setText(_translate("HesapMakinesi", "C"))
self.pushButton_13.setText(_translate("HesapMakinesi", "/"))
self.pushButton_14.setText(_translate("HesapMakinesi", "+"))
self.pushButton_15.setText(_translate("HesapMakinesi", "-"))
self.pushButton_16.setText(_translate("HesapMakinesi", "**"))
self.pushButton_17.setText(_translate("HesapMakinesi", "S**"))
self.pushButton_18.setText(_translate("HesapMakinesi", "="))
self.pushButton_19.setText(_translate("HesapMakinesi", "DEL"))
self.label.setText(_translate("HesapMakinesi", "En Son Sonuç :"))
self.pushButton_20.setText(_translate("HesapMakinesi", "√¯"))
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
HesapMakinesi = QtWidgets.QWidget()
ui = HesapMakinesi()
ui.setupUi(HesapMakinesi)
HesapMakinesi.show()
sys.exit(app.exec_())
“”""""""""""""""
Hesap Makinesi Yapılandırma kodları :
from PyQt5.QtWidgets import *
import sys
import Hesap_Makinesi
import math
from PyQt5.QtGui import *
from PyQt5.QtCore import *
class Pencere(QMainWindow, Hesap_Makinesi.HesapMakinesi):
def __init__(self):
super().__init__()
self.setupUi(self)
self.timer = QTimer()
self.pushButton.clicked.connect(self.click1)
self.pushButton_2.clicked.connect(self.click2)
self.pushButton_3.clicked.connect(self.click3)
self.pushButton_4.clicked.connect(self.click4)
self.pushButton_5.clicked.connect(self.click5)
self.pushButton_6.clicked.connect(self.click6)
self.pushButton_7.clicked.connect(self.click7)
self.pushButton_8.clicked.connect(self.click8)
self.pushButton_9.clicked.connect(self.click9)
self.pushButton_10.clicked.connect(self.click10)
self.pushButton_12.clicked.connect(self.click11)
self.pushButton_17.clicked.connect(self.click12)
self.pushButton_14.clicked.connect(self.click13)
self.pushButton_15.clicked.connect(self.click14)
self.pushButton_11.clicked.connect(self.click15)
self.pushButton_13.clicked.connect(self.click16)
self.pushButton_16.clicked.connect(self.click17)
self.pushButton_16.setContextMenuPolicy(Qt.CustomContextMenu)
self.pushButton_16.customContextMenuRequested.connect(self.handle_right_click)
self.pushButton_18.clicked.connect(self.clicklast)
self.pushButton_19.clicked.connect(self.delete)
self.pushButton_20.clicked.connect(self.karekok)
def click1(self):
yazi = self.lineEdit.text() + "1"
self.lineEdit.setText(yazi)
def click2(self):
yazi = self.lineEdit.text() + "2"
self.lineEdit.setText(yazi)
def click3(self):
yazi = self.lineEdit.text() + "3"
self.lineEdit.setText(yazi)
def click4(self):
yazi = self.lineEdit.text() + "4"
self.lineEdit.setText(yazi)
def click5(self):
yazi = self.lineEdit.text() + "5"
self.lineEdit.setText(yazi)
def click6(self):
yazi = self.lineEdit.text() + "6"
self.lineEdit.setText(yazi)
def click7(self):
yazi = self.lineEdit.text() + "7"
self.lineEdit.setText(yazi)
def click8(self):
yazi = self.lineEdit.text() + "8"
self.lineEdit.setText(yazi)
def click9(self):
yazi = self.lineEdit.text() + "9"
self.lineEdit.setText(yazi)
def click10(self):
yazi = self.lineEdit.text() + "0"
self.lineEdit.setText(yazi)
def click11(self):
self.lineEdit.clear()
def click12(self):
superscript = {
"0": "\u2070",
"1": "\u00b9",
"2": "\u00b2",
"3": "\u00b3",
"4": "\u2074",
"5": "\u2075",
"6": "\u2076",
"7": "\u2077",
"8": "\u2078",
"9": "\u2079"
}
def get_superscript(x):
return "".join(superscript[i] for i in str(x))
def exponential_expression(x):
count = 2
while (y := math.log(x, count)) != int(y):
count += 1
return f"{count}{get_superscript(int(y))}"
try:
d = self.lineEdit.text()
self.lineEdit.setText(exponential_expression(x=int(d)))
except ValueError:
self.lineEdit.setText("Geçersiz İşlem")
self.label_2.setText(self.lineEdit.text())
def click13(self):
yazi = self.lineEdit.text() + "+"
self.lineEdit.setText(yazi)
def click14(self):
yazi = self.lineEdit.text() + "-"
self.lineEdit.setText(yazi)
def click15(self):
yazi = self.lineEdit.text() + "*"
self.lineEdit.setText(yazi)
def click16(self):
yazi = self.lineEdit.text() + "/"
self.lineEdit.setText(yazi)
def click17(self):
yazi = self.lineEdit.text() + "**"
self.lineEdit.setText(yazi)
def handle_right_click(self):
yazi = self.lineEdit.text() + "."
self.lineEdit.setText(yazi)
def delete(self):
text = self.lineEdit.text()
print(text[:len(text)-1])
self.lineEdit.setText(text[:len(text)-1])
def karekok(self):
try:
self.label_2.setText(self.lineEdit.text())
txt = self.lineEdit.text()
integer = int(txt)
rp = int(math.sqrt(abs(integer)))
ans = eval("{}*{}".format(str(rp),str(rp)))
if str(ans) == self.label_2.text():
self.lineEdit.setText(str(rp)+"^2")
else:
self.lineEdit.setText("Bu Sayının Karekökü Yoktur")
except ValueError:
self.lineEdit.setText("Geçersiz İşlem")
def clicklast(self):
# get the label text
equation = self.lineEdit.text()
try:
# getting the ans
ans = eval(equation)
# setting text to the label
self.lineEdit.setText(str(ans))
except:
# setting text to the label
self.lineEdit.setText("Geçersiz İşlem")
self.label_2.setText(self.lineEdit.text())
app = QApplication(sys.argv)
pencere = Pencere()
pencere.setWindowTitle("Hesap Makinesi")
pencere.show()
sys.exit(app.exec_())
İnşallah beğenirsiniz
Sizin için çok basit bir proje olsa gerek fakat benim için uğraştırıcı, ama keyifli bir projeydi.