Код приложения
Calculator
Calculator
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'Calculator.ui'
#
# Created by: PyQt5 UI code generator 5.15.11
#
# 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 Ui_Calculator(object):
def setupUi(self, Calculator):
Calculator.setObjectName("Calculator")
Calculator.setFixedSize(497, 701)
Calculator.setStyleSheet("color: rgb(59, 59, 59);\n"
"background-color: rgb(62, 62, 62);")
self.centralwidget = QtWidgets.QWidget(Calculator)
self.centralwidget.setObjectName("centralwidget")
self.btn_Clear = QtWidgets.QPushButton(self.centralwidget)
self.btn_Clear.setGeometry(QtCore.QRect(10, 560, 121, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_Clear.setFont(font)
self.btn_Clear.setStyleSheet("background-color: rgb(170, 0, 0);\n"
"background-color: rgb(255, 99, 85);")
self.btn_Clear.setCheckable(False)
self.btn_Clear.setAutoRepeatDelay(300)
self.btn_Clear.setAutoRepeatInterval(100)
self.btn_Clear.setAutoDefault(False)
self.btn_Clear.setObjectName("btn_Clear")
self.btn_0 = QtWidgets.QPushButton(self.centralwidget)
self.btn_0.setGeometry(QtCore.QRect(140, 560, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_0.setFont(font)
self.btn_0.setStyleSheet("background-color: rgb(167, 118, 19);\n"
"background-color: rgb(255, 138, 43);")
self.btn_0.setObjectName("btn_0")
self.btn_1 = QtWidgets.QPushButton(self.centralwidget)
self.btn_1.setGeometry(QtCore.QRect(10, 460, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_1.setFont(font)
self.btn_1.setStyleSheet("background-color: rgb(167, 118, 19);\n"
"background-color: rgb(255, 138, 43);")
self.btn_1.setCheckable(False)
self.btn_1.setAutoRepeatDelay(300)
self.btn_1.setAutoRepeatInterval(100)
self.btn_1.setAutoDefault(False)
self.btn_1.setObjectName("btn_1")
self.btn_4 = QtWidgets.QPushButton(self.centralwidget)
self.btn_4.setGeometry(QtCore.QRect(10, 350, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_4.setFont(font)
self.btn_4.setStyleSheet("background-color: rgb(167, 118, 19);\n"
"background-color: rgb(255, 138, 43);")
self.btn_4.setCheckable(False)
self.btn_4.setAutoRepeatDelay(300)
self.btn_4.setAutoRepeatInterval(100)
self.btn_4.setAutoDefault(False)
self.btn_4.setObjectName("btn_4")
self.btn_7 = QtWidgets.QPushButton(self.centralwidget)
self.btn_7.setGeometry(QtCore.QRect(10, 240, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_7.setFont(font)
self.btn_7.setStyleSheet("background-color: rgb(167, 118, 19);\n"
"background-color: rgb(255, 138, 43);")
self.btn_7.setCheckable(False)
self.btn_7.setAutoRepeatDelay(300)
self.btn_7.setAutoRepeatInterval(100)
self.btn_7.setAutoDefault(False)
self.btn_7.setObjectName("btn_7")
self.btn_8 = QtWidgets.QPushButton(self.centralwidget)
self.btn_8.setGeometry(QtCore.QRect(140, 240, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_8.setFont(font)
self.btn_8.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_8.setCheckable(False)
self.btn_8.setAutoRepeatDelay(300)
self.btn_8.setAutoRepeatInterval(100)
self.btn_8.setAutoDefault(False)
self.btn_8.setObjectName("btn_8")
self.btn_5 = QtWidgets.QPushButton(self.centralwidget)
self.btn_5.setGeometry(QtCore.QRect(140, 350, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_5.setFont(font)
self.btn_5.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_5.setCheckable(False)
self.btn_5.setAutoRepeatDelay(300)
self.btn_5.setAutoRepeatInterval(100)
self.btn_5.setAutoDefault(False)
self.btn_5.setObjectName("btn_5")
self.btn_2 = QtWidgets.QPushButton(self.centralwidget)
self.btn_2.setGeometry(QtCore.QRect(140, 460, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_2.setFont(font)
self.btn_2.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_2.setCheckable(False)
self.btn_2.setAutoRepeatDelay(300)
self.btn_2.setAutoRepeatInterval(100)
self.btn_2.setAutoDefault(False)
self.btn_2.setObjectName("btn_2")
self.btn_9 = QtWidgets.QPushButton(self.centralwidget)
self.btn_9.setGeometry(QtCore.QRect(270, 240, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_9.setFont(font)
self.btn_9.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_9.setCheckable(False)
self.btn_9.setAutoRepeatDelay(300)
self.btn_9.setAutoRepeatInterval(100)
self.btn_9.setAutoDefault(False)
self.btn_9.setObjectName("btn_9")
self.btn_6 = QtWidgets.QPushButton(self.centralwidget)
self.btn_6.setGeometry(QtCore.QRect(270, 350, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_6.setFont(font)
self.btn_6.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_6.setCheckable(False)
self.btn_6.setAutoRepeatDelay(300)
self.btn_6.setAutoRepeatInterval(100)
self.btn_6.setAutoDefault(False)
self.btn_6.setObjectName("btn_6")
self.btn_3 = QtWidgets.QPushButton(self.centralwidget)
self.btn_3.setGeometry(QtCore.QRect(270, 460, 121, 91))
font = QtGui.QFont()
font.setPointSize(24)
font.setBold(True)
font.setWeight(75)
self.btn_3.setFont(font)
self.btn_3.setStyleSheet("background-color: rgb(255, 138, 43);")
self.btn_3.setCheckable(False)
self.btn_3.setAutoRepeatDelay(300)
self.btn_3.setAutoRepeatInterval(100)
self.btn_3.setAutoDefault(False)
self.btn_3.setObjectName("btn_3")
self.btn_ravno = QtWidgets.QPushButton(self.centralwidget)
self.btn_ravno.setGeometry(QtCore.QRect(270, 560, 121, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_ravno.setFont(font)
self.btn_ravno.setStyleSheet("background-color: rgb(119, 255, 255);")
self.btn_ravno.setCheckable(False)
self.btn_ravno.setAutoRepeatDelay(300)
self.btn_ravno.setAutoRepeatInterval(100)
self.btn_ravno.setAutoDefault(False)
self.btn_ravno.setObjectName("btn_ravno")
self.btn_plus = QtWidgets.QPushButton(self.centralwidget)
self.btn_plus.setGeometry(QtCore.QRect(400, 240, 81, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_plus.setFont(font)
self.btn_plus.setStyleSheet("background-color: rgb(96, 165, 255);")
self.btn_plus.setCheckable(False)
self.btn_plus.setAutoRepeatDelay(300)
self.btn_plus.setAutoRepeatInterval(100)
self.btn_plus.setAutoDefault(False)
self.btn_plus.setObjectName("btn_plus")
self.btn_minus = QtWidgets.QPushButton(self.centralwidget)
self.btn_minus.setGeometry(QtCore.QRect(400, 350, 81, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_minus.setFont(font)
self.btn_minus.setStyleSheet("background-color: rgb(96, 165, 255);")
self.btn_minus.setCheckable(False)
self.btn_minus.setAutoRepeatDelay(300)
self.btn_minus.setAutoRepeatInterval(100)
self.btn_minus.setAutoDefault(False)
self.btn_minus.setObjectName("btn_minus")
self.btn_ymn = QtWidgets.QPushButton(self.centralwidget)
self.btn_ymn.setGeometry(QtCore.QRect(400, 460, 81, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_ymn.setFont(font)
self.btn_ymn.setStyleSheet("background-color: rgb(96, 165, 255);")
self.btn_ymn.setCheckable(False)
self.btn_ymn.setAutoRepeatDelay(300)
self.btn_ymn.setAutoRepeatInterval(100)
self.btn_ymn.setAutoDefault(False)
self.btn_ymn.setObjectName("btn_ymn")
self.btn_del = QtWidgets.QPushButton(self.centralwidget)
self.btn_del.setGeometry(QtCore.QRect(400, 560, 81, 91))
font = QtGui.QFont()
font.setPointSize(26)
font.setBold(True)
font.setWeight(75)
self.btn_del.setFont(font)
self.btn_del.setStyleSheet("background-color: rgb(108, 179, 255);\n"
"background-color: rgb(101, 194, 255);\n"
"background-color: rgb(96, 165, 255);")
self.btn_del.setCheckable(False)
self.btn_del.setAutoRepeatDelay(300)
self.btn_del.setAutoRepeatInterval(100)
self.btn_del.setAutoDefault(False)
self.btn_del.setObjectName("btn_del")
self.label_1 = QtWidgets.QLabel(self.centralwidget)
self.label_1.setGeometry(QtCore.QRect(10, 40, 471, 131))
font = QtGui.QFont()
font.setPointSize(28)
font.setBold(True)
font.setWeight(75)
self.label_1.setFont(font)
self.label_1.setStyleSheet("background-color: rgb(136, 136, 136);")
self.label_1.setObjectName("label_1")
Calculator.setCentralWidget(self.centralwidget)
self.menubar = QtWidgets.QMenuBar(Calculator)
self.menubar.setGeometry(QtCore.QRect(0, 0, 497, 21))
self.menubar.setObjectName("menubar")
Calculator.setMenuBar(self.menubar)
self.statusbar = QtWidgets.QStatusBar(Calculator)
self.statusbar.setObjectName("statusbar")
Calculator.setStatusBar(self.statusbar)
self.retranslateUi(Calculator)
QtCore.QMetaObject.connectSlotsByName(Calculator)
self.function()
self.is_equal = False
def retranslateUi(self, Calculator):
_translate = QtCore.QCoreApplication.translate
Calculator.setWindowTitle(_translate("Calculator", "Калькулятор"))
self.btn_Clear.setText(_translate("Calculator", "C"))
self.btn_0.setText(_translate("Calculator", "0"))
self.btn_1.setText(_translate("Calculator", "1"))
self.btn_4.setText(_translate("Calculator", "4"))
self.btn_7.setText(_translate("Calculator", "7"))
self.btn_8.setText(_translate("Calculator", "8"))
self.btn_5.setText(_translate("Calculator", "5"))
self.btn_2.setText(_translate("Calculator", "2"))
self.btn_9.setText(_translate("Calculator", "9"))
self.btn_6.setText(_translate("Calculator", "6"))
self.btn_3.setText(_translate("Calculator", "3"))
self.btn_ravno.setText(_translate("Calculator", "="))
self.btn_plus.setText(_translate("Calculator", "+"))
self.btn_minus.setText(_translate("Calculator", "-"))
self.btn_ymn.setText(_translate("Calculator", "*"))
self.btn_del.setText(_translate("Calculator", "/"))
self.label_1.setText(_translate("Calculator", "0"))
def function(self):
self.btn_0.clicked.connect(lambda: self.write_number(self.btn_0.text()))
self.btn_1.clicked.connect(lambda: self.write_number(self.btn_1.text()))
self.btn_2.clicked.connect(lambda: self.write_number(self.btn_2.text()))
self.btn_3.clicked.connect(lambda: self.write_number(self.btn_3.text()))
self.btn_4.clicked.connect(lambda: self.write_number(self.btn_4.text()))
self.btn_5.clicked.connect(lambda: self.write_number(self.btn_5.text()))
self.btn_6.clicked.connect(lambda: self.write_number(self.btn_6.text()))
self.btn_7.clicked.connect(lambda: self.write_number(self.btn_7.text()))
self.btn_8.clicked.connect(lambda: self.write_number(self.btn_8.text()))
self.btn_9.clicked.connect(lambda: self.write_number(self.btn_9.text()))
self.btn_plus.clicked.connect(lambda: self.write_number(self.btn_plus.text()))
self.btn_minus.clicked.connect(lambda: self.write_number(self.btn_minus.text()))
self.btn_ymn.clicked.connect(lambda: self.write_number(self.btn_ymn.text()))
self.btn_del.clicked.connect(lambda: self.write_number(self.btn_del.text()))
self.btn_ravno.clicked.connect(self.results)
self.btn_Clear.clicked.connect(self.clear)
def write_number(self, number):
if self.label_1.text() == '0' or self.is_equal:
self.label_1.setText(number)
self.is_equal = False
else:
self.label_1.setText(self.label_1.text() + number)
def clear(self):
if self.label_1.text() != '0':
self.label_1.setText('0')
else:
print()
def results(self):
res = eval(self.label_1.text())
self.label_1.setText(str(res))
self.is_equal = True
if __name__ == "__main__":
import sys
app = QtWidgets.QApplication(sys.argv)
Calculator = QtWidgets.QMainWindow()
ui = Ui_Calculator()
ui.setupUi(Calculator)
Calculator.show()
sys.exit(app.exec_())