Python PyQt5实现的简易计算器功能示例
本篇章节讲解Python PyQt5实现的简易计算器功能。分享给大家供大家参考,具体如下: 这里剩下计算函数( 【知识点】 1、利用循环添加按钮部件,及给每个按钮设置信号/槽 【效果图】 【源代码】 import sys from PyQt5 import QtWidgets,QtCore,QtGui class Example(QtWidgets.QWidget): def __init__(self): super(Example,self).__init__() self.initUI() self.reset() def initUI(self): self.setWindowTitle('简易计算器') grid = QtWidgets.QGridLayout() self.display = QtWidgets.QLineEdit('0') self.display.setFont(QtGui.QFont("Times",20)) self.display.setReadOnly(True) self.display.setAlignment(QtCore.Qt.AlignRight) self.display.setMaxLength(15) grid.addWidget(self.display,1,4) names = ['Clear','Back','','Close','7','8','9','/','4','5','6','*','1','2','3','-','0','.','=','+'] pos = [(0,0),(0,1),2),3),(1,(2,(3,3 ),(4,3)] c = 0 for name in names: button = QtWidgets.QPushButton(name) button.setFixedSize(QtCore.QSize(60,30)) button.clicked.connect(self.buttonClicked) # 给每个按钮设置信号/槽 if c == 2: pass #grid.addWidget(QtWidgets.QLabel(''),2) #替换 第三个按钮 为 文本标签! else: grid.addWidget(button,pos[c][0]+1,pos[c][1]) c = c + 1 self.setLayout(grid) def buttonClicked(self): #sender = self.sender(); # 确定信号发送者 #self.display.setText(sender.text()) text = self.sender().text() if text in '+-*/': self.history.append(self.number) # 数字入栈 self.history.append(text) # 运算符入栈 self.operator = text # 设置当前运算符 self.number = "" # 数字清空 self.numberType = "int" return elif text == "=": self.calculate() # 计算 elif text == "Back": pass elif text == "Clear": self.reset() elif text == "Close": self.close() elif text == ".": if self.numberType == "int": self.number += text self.numberType = "float" else: self.number = self.number + text if self.number != "0" else text self.display.setText(self.number) def calculate(self): pass def reset(self): self.number = "0" self.result = 0 self.history = [] self.operator = '' # +,-,*,/ self.numberType = 'int' # int与float两种,如果输入了小数点则为实数 app = QtWidgets.QApplication(sys.argv) ex = Example() ex.show() sys.exit(app.exec_()) PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴: 在线一元函数(方程)求解计算工具: 科学计算器在线使用_高级计算器在线计算: 在线计算器_标准计算器: 更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》 希望本文所述对大家Python程序设计有所帮助。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |