ezcal.py 3.11 KB
Newer Older
Kriengsak's avatar
Kriengsak committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71
import sys
from PyQt5.QtWidgets import (QApplication, QWidget,
                             QGridLayout, QVBoxLayout, QHBoxLayout,
                             QLabel, QLineEdit, QPushButton)
class MainWindow(QWidget):
	def __init__(self, parent=None):
		super(MainWindow, self).__init__(parent)
#สร้างปุ่มและช่องกรอกข้อมูล
		self.firstNumber = QLineEdit()
		self.secondNumber = QLineEdit()
		self.outputLine = QLineEdit()
		self.outputLine.setReadOnly(True)
		self.sumButton = QPushButton("บวก")
		self.sumButton.clicked.connect(self.sum)	#กำหนดการทำงานให้ปุ่มบวก
		self.subButton = QPushButton("ลบ")
		self.subButton.clicked.connect(self.sub)	#กำหนดการทำงานให้ปุ่มลบ
		self.mulButton = QPushButton("คูณ")
		self.mulButton.clicked.connect(self.mul)	#กำหนดการทำงานให้ปุ่มคูณ
		self.divButton = QPushButton("หาร")
		self.divButton.clicked.connect(self.div)	#กำหนดการทำงานให้ปุ่มหาร
		self.expButton = QPushButton("ยกกำลัง")
		self.expButton.clicked.connect(self.exp)	#กำหนดการทำงานให้ปุ่มยกกำลัง
#จัดวางปุ่นต่าง ๆ ลงหน้าจอ
		lineLayout = QGridLayout()
		lineLayout.addWidget(QLabel("ตัวแรก"), 0, 0)
		lineLayout.addWidget(self.firstNumber, 0, 1)
		lineLayout.addWidget(QLabel("ตัวที่สอง"), 1, 0)
		lineLayout.addWidget(self.secondNumber, 1, 1)
		lineLayout.addWidget(QLabel("ผลลัพธ์"), 2, 0)
		lineLayout.addWidget(self.outputLine, 2, 1)
		buttonLayout = QVBoxLayout()
		buttonLayout.addWidget(self.sumButton)
		buttonLayout.addWidget(self.subButton)
		buttonLayout.addWidget(self.mulButton)
		buttonLayout.addWidget(self.divButton)
		buttonLayout.addWidget(self.expButton)
		mainLayout = QHBoxLayout()
		mainLayout.addLayout(lineLayout)
		mainLayout.addLayout(buttonLayout)
		self.setLayout(mainLayout)
		self.setWindowTitle("EZ calculator")
#นิยามการบวกเลขสองตัว
	def sum(self):
		n = int(self.firstNumber.text())		#รับค่ามาจากช่อง"ตัวแรก"
		r = int(self.secondNumber.text())  #รับค่ามาจากช่อง"ตัวที่สอง"
		self.outputLine.setText(str(n+r))  #กำหนดค่าให้ช่อง"ผลลัพธ์"
#นิยามการลบเลขสองตัว
	def sub(self):
		n = 0
		r = 0
		self.outputLine.setText()
#นิยามการคูณเลขสองตัว
	def mul(self):
		n = 0
		r = 0
		self.outputLine.setText()
#นิยามการหารเลขสองตัว
	def div(self):
		n = 0
		r = 0
		self.outputLine.setText()
#นิยามการยกกำลังเลขสองตัว
	def exp(self):
		n = 0
		r = 0
		self.outputLine.setText()
if __name__ == '__main__':
	app = QApplication(sys.argv)
	main_window = MainWindow()
	main_window.show()
	sys.exit(app.exec_())