Python Qt学习(四)Radio Button

代码

复制代码
# -*- coding: utf-8 -*-

# Form implementation generated from reading ui file 'D:\Works\Python\Qt\qt_radiobutton.ui'
#
# Created by: PyQt5 UI code generator 5.15.9
#
# 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
from PyQt5.QtWidgets import QApplication
import sys


class Ui_MainWindow(object):
    def setupUi(self, MainWindow):
        MainWindow.setObjectName("MainWindow")
        MainWindow.resize(287, 349)
        self.radioButton = QtWidgets.QRadioButton(MainWindow)
        self.radioButton.setGeometry(QtCore.QRect(30, 50, 115, 19))
        self.radioButton.setChecked(True)
        self.radioButton.setAutoRepeat(False)
        self.radioButton.setObjectName("radioButton")

        self.radioButton_2 = QtWidgets.QRadioButton(MainWindow)
        self.radioButton_2.setGeometry(QtCore.QRect(30, 80, 115, 19))
        self.radioButton_2.setObjectName("radioButton_2")

        self.pushButton = QtWidgets.QPushButton(MainWindow)
        self.pushButton.setGeometry(QtCore.QRect(20, 170, 191, 28))
        self.pushButton.setObjectName("pushButton")
        self.pushButton.clicked.connect(self.getCurrentRadioButton)

        self.pushButton_2 = QtWidgets.QPushButton(MainWindow)
        self.pushButton_2.setGeometry(QtCore.QRect(20, 220, 191, 28))
        self.pushButton_2.setObjectName("pushButton_2")
        self.pushButton_2.clicked.connect(self.setRadioButton1Check)

        self.pushButton_3 = QtWidgets.QPushButton(MainWindow)
        self.pushButton_3.setGeometry(QtCore.QRect(20, 270, 191, 28))
        self.pushButton_3.setObjectName("pushButton_3")
        self.pushButton_3.clicked.connect(self.setRadioButton2Check)

        self.retranslateUi(MainWindow)
        QtCore.QMetaObject.connectSlotsByName(MainWindow)

    def retranslateUi(self, MainWindow):
        _translate = QtCore.QCoreApplication.translate
        MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))
        self.radioButton.setText(_translate("MainWindow", "RadioButton 1"))
        self.radioButton_2.setText(_translate("MainWindow", "RadioButton 2"))
        self.pushButton.setText(_translate("MainWindow", "Get Current Radio Button"))
        self.pushButton_2.setText(_translate("MainWindow", "Set Radio Button 1"))
        self.pushButton_3.setText(_translate("MainWindow", "Set Radio Button 2"))

    def show(self, Form):
        Form.show()

    def getCurrentRadioButton(self):        
        if self.radioButton.isChecked()==True:
            self.messageBox("Radio Button 1 Checked")
        if self.radioButton_2.isChecked()==True:
            self.messageBox("Radio Button 2 Checked")

    def setRadioButton1Check(self):
        self.radioButton.setChecked(True)

    def setRadioButton2Check(self):
        self.radioButton_2.setChecked(True)
    
    def messageBox(self,msg):
        msgBox = QtWidgets.QMessageBox()
        msgBox.setIcon(QtWidgets.QMessageBox.Icon.Information)
        msgBox.setWindowTitle("Qt Message Box")
        msgBox.setText(msg)
        msgBox.setStandardButtons(QtWidgets.QMessageBox.Ok | QtWidgets.QMessageBox.Cancel)
        returnValue = msgBox.exec()

if __name__ == "__main__":
    app = QApplication(sys.argv)
    Form=QtWidgets.QWidget()    
    main_win = Ui_MainWindow()    
    main_win.setupUi(Form)
    main_win.show(Form)

    sys.exit(app.exec())    

运行截图:

相关推荐
王仔小奶7 分钟前
慢SQL治理与性能调优:DBA如何用Shell/Python提升运维效率?
python·sql·dba
用户03321266636711 分钟前
使用 Python 快速在 PowerPoint 中生成表格【教程】
python
夜晚回家24 分钟前
Python 身份运算符详解 | is 与 == 到底差在哪
python
fengye20716127 分钟前
cpython框架结构
python
用户912940468484235 分钟前
大模型返回 JSON 后,先过这道 Python 校验
python
Dmz丶1 小时前
前端转 AI 100 天 Day 32:LLM 客户端工程化——重试、超时、降级、限流
python
曲径海盗1 小时前
【Python 学习第 39 天】for 循环
python·学习笔记·编程入门
万联WANFLOW2 小时前
Kimi K3.1 Pro 接口接入指南:模型选型、费用计算与零数据保留
java·spring boot·python·安全·spring·大模型
问心无愧05132 小时前
[护网杯 2018]easy_tornado
python·tornado
全栈弄潮儿2 小时前
Python实战第13期:模块与包
后端·python·编程语言