最近打算出一些有趣的教程,python版本和c++版本都会持续更新,有一起学习的小伙伴点个关注呗。
先展示下效果图:
代码如下含注释:
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.QtWidgets import QMessageBox, QWidget
class Ui_MainWindow(QWidget):
def setupUi(self, MainWindow):
MainWindow.setObjectName("MainWindow") #通过代码设置控件的objectName
MainWindow.resize(443, 300) #设置控件的界面尺寸
self.centralwidget = QtWidgets.QWidget(MainWindow) #用户对象基类
self.centralwidget.setObjectName("centralwidget") #设置控件名称
self.pushButton = QtWidgets.QPushButton(self.centralwidget) #设置按钮控件,这里是开始预测按钮
self.pushButton.setGeometry(QtCore.QRect(100, 140, 231, 81))#设置按钮控件的尺寸
font = QtGui.QFont() #设置字体
font.setFamily("Arial") #字体类型
font.setPointSize(15) #字体的尺寸
self.pushButton.setFont(font) #载入按钮设置的字体
self.pushButton.setObjectName("pushButton") #设置该按钮控件的名称
self.label = QtWidgets.QLabel(self.centralwidget) #设置按钮控件,这里是输入你的体重
self.label.setGeometry(QtCore.QRect(30, 30, 321, 61)) #设置按钮控件的尺寸
font = QtGui.QFont() #设置字体
font.setFamily("Arial") #字体类型
font.setPointSize(15) #字体的尺寸
self.label.setFont(font) #载入按钮设置的字体
self.label.setObjectName("label") #设置该按钮控件的名称
self.lineEdit = QtWidgets.QLineEdit(self.centralwidget) #设置按钮控件,这里是文本框输入内容
self.lineEdit.setGeometry(QtCore.QRect(250, 40, 121, 51)) #设置按钮控件的尺寸
font = QtGui.QFont() #设置字体
font.setFamily("Arial") #字体类型
font.setPointSize(15) #字体的尺寸
self.lineEdit.setFont(font) #载入按钮设置的字体
self.lineEdit.setObjectName("lineEdit") #设置该按钮控件的名称
self.label_2 = QtWidgets.QLabel(self.centralwidget) #设置按钮控件,这里是单个文字“斤”
self.label_2.setGeometry(QtCore.QRect(380, 40, 51, 51)) #设置按钮控件的尺寸
font = QtGui.QFont() #设置字体
font.setFamily("Arial") #字体类型
font.setPointSize(15) #字体的尺寸
self.label_2.setFont(font) #载入按钮设置的字体
self.label_2.setObjectName("label_2") #设置该按钮控件的名称
MainWindow.setCentralWidget(self.centralwidget) #创建qt中心窗口
self.pushButton.clicked.connect(self.get_high) #点击触发函数get_high
self.retranslateUi(MainWindow) #将主控件窗口传入retranslateUi函数中
QtCore.QMetaObject.connectSlotsByName(MainWindow) #根据objectName和signal自动绑定slot
def retranslateUi(self, MainWindow):
_translate = QtCore.QCoreApplication.translate #构建出当前线程需要的事件驱动器
MainWindow.setWindowIcon(QtGui.QIcon('./icon.jpg')) #设置窗口的图标
MainWindow.setWindowTitle(_translate("MainWindow", "体重预测------张某人")) #设置窗口的名称
self.pushButton.setText(_translate("MainWindow", "开始预测")) #设置控制按钮名称
self.label.setText(_translate("MainWindow", "请输入你的体重:")) #设置提示输入语的内容
self.label_2.setText(_translate("MainWindow", "斤"))
def get_high(self):
yousay_content = self.lineEdit.text() #获取输入文本的内容
self.ter = QMessageBox.about(self, "恭喜!", "你的体重大约是:{}斤".format(int(yousay_content)//20*20)) #进行弹窗输出
if __name__=='__main__':
import sys
app = QtWidgets.QApplication(sys.argv) #实例化一个应用对象
MainWindow = QtWidgets.QMainWindow() #窗口界面控制
ui = Ui_MainWindow() #使用定义好的类
ui.setupUi(MainWindow)
MainWindow.show() # 让控件在桌面上显示出来。控件在内存里创建,之后才能在显示器上显示出来。
sys.exit(app.exec_()) # 确保主循环安全退出