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())    

运行截图:

相关推荐
张3蜂1 小时前
Gunicorn深度解析:Python WSGI服务器的王者
服务器·python·gunicorn
rayufo7 小时前
【工具】列出指定文件夹下所有的目录和文件
开发语言·前端·python
Python 老手8 小时前
Python while 循环 极简核心讲解
java·python·算法
开源技术9 小时前
如何将本地LLM模型与Ollama和Python集成
开发语言·python
weixin_437044649 小时前
Netbox批量添加设备——堆叠设备
linux·网络·python
我有医保我先冲9 小时前
AI 时代 “任务完成“ 与 “专业能力“ 的区分:理论基础、行业影响与个人发展策略
人工智能·python·机器学习
测试开发Kevin9 小时前
小tip:换行符CRLF 和 LF 的区别以及二者在实际项目中的影响
java·开发语言·python
爱学习的阿磊10 小时前
使用PyTorch构建你的第一个神经网络
jvm·数据库·python
阿狸OKay10 小时前
einops 库和 PyTorch 的 einsum 的语法
人工智能·pytorch·python
编码者卢布10 小时前
【Azure Storage Account】Azure Table Storage 跨区批量迁移方案
后端·python·flask