本稿では、基本的な使用PyQt5インタフェースのラジオボタンについて説明し、チェックボックス、ドロップダウンボックスをコントロールの3種類が導入されて使用します。
1、のRadioButtonラジオボタン/チェックボックスのチェックボックスをオンにします。あなたはラジオボタンが選択されているかどうかを確認する方法を知っておく必要があります。
2、コンボボックスのドロップダウンボックス。あなたは、ドロップダウンボックスの値の値を選択するようにユーザーを取得するにはどのように設定すると、コードの実装方法を知る必要があります。
これらの質問は、この次の導入を始めたとのRadioButtonラジオボタン、チェックボックスのチェックボックス、コンボボックスのドロップダウンボックスを三つの基本的なコントロールを使用します
QRadioButtonラジオボタン
ユーザーのためのラジオボタンを提供するために、多くの選択肢、スイッチボタンを。ラジオボタンの状態にisChecked()を選択するかどうかを決定するQRadioButton方法。選択された、偽手段が選択されていない場合にisChecked()メソッドは、真の値を返します。
次のように完全なコードのラジオボタンの例は次のとおりです。
#- * -コーディング:UTF-8 - * - インポートSYS から PyQt5 インポートQtCore、QtGui、QtWidgets から PyQt5.QtWidgetsはインポートはQApplication、QMainWindow、QMessageBox、QRadioButtonの クラスUi_Form(オブジェクト): DEF setupUi(自己フォーム): フォーム。 setObjectName(" フォーム" ) Form.resize( 309、126 ) self.radioButton = QtWidgets.QRadioButton(様式) self.radioButton.setGeometry(QtCore.QRect( 70、40、89、16 )) self.radioButton.setObjectName("ラジオボタン" ) self.okButton = QtWidgets.QPushButton(様式) self.okButton.setGeometry(QtCore.QRect( 70、70、75、23 )) self.okButton.setObjectName(" OKボタン" ) self.retranslateUi(フォーム) QtCore。 QMetaObject.connectSlotsByName(フォーム) デフretranslateUi(自己、フォーム): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate(" フォーム"、" RadioButtonの单选按钮例子" )) self.radioButton.setText(_translate( " フォーム"、" 单选按钮" )) self.okButton.setText(_translate(" フォーム"、" 确定" )) クラスMyMainForm(QMainWindow、Ui_Form): デフ __init__(自己、親= なし): スーパー(MyMainForm、自己)。__init__ (親) self.setupUi(自己) self.okButton.clicked.connect(self.checkRadioButton) デフcheckRadioButton(自己): もしself.radioButton.isChecked(): QMessageBox.information(自己、" 消息框标题"、" I RadioButtonのボタンが、それを選択されている!"、QMessageBox.Yes | QMessageBox.No) IF __name__ == " __main__ " : アプリケーション = はQApplication(sys.argvの) mywin = MyMainForm( ) myWin.show() sys.exit(app.exec_())
結果は以下の通りであります:
キーコードが導入されています。
self.radioButton.isChecked() - >ラジオボタンコントロールが選択されているかどうかを決定するために使用されます。戻り値Truleボタンが選択されていない、偽手段選択されたボタンを発現しました。
QCheckBoxボックス
ボックスやラジオボタンがオプションボタンと同じです確認し、ボックスの違いをチェックしてユーザーに提供することである複数の選択肢とより多くの選択肢。再び選択されたか否かを判断するのにisCheckedボックス()メソッドを使用してボタン。
例としては、次のように完全なコードがあるチェックボックス:
#- * -コーディング:UTF-8 - * - インポートSYS から PyQt5 インポートQtCore、QtGui、QtWidgets から PyQt5.QtWidgetsはインポートはQApplication、QMainWindow、QMessageBox、QCheckBoxの クラスUi_Form(オブジェクト): DEF setupUi(自己フォーム): フォーム。 setObjectName(" フォーム" ) Form.resize( 380、154 ) self.freshcheckBox = QtWidgets.QCheckBox(様式) self.freshcheckBox.setGeometry(QtCore.QRect( 50、40、71、31 )) フォント = QtGui.QFont() font.setPointSize( 14 ) self.freshcheckBox.setFont(フォント) self.freshcheckBox.setObjectName(" freshcheckBox " ) self.bearcheckBox = QtWidgets.QCheckBox(様式) self.bearcheckBox.setGeometry(QtCore.QRect( 140、40、71、 31 )) フォント = QtGui.QFont() font.setPointSize( 14 ) self.bearcheckBox.setFont(フォント) self.bearcheckBox.setObjectName(" bearcheckBox " ) self.okButton = QtWidgets.QPushButton(形態) self.okButton.setGeometry(QtCore.QRect( 230、40、71、31 )) フォント = QtGui.QFont() font.setPointSize( 14 ) self.okButton.setFont(フォント) self.okButton.setObjectName(" OKボタン" ) self.retranslateUi(様式) QtCore.QMetaObject.connectSlotsByName(様式) DEF retranslateUi(自己フォーム): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate(" フォーム"、" チェックボックス例子" )) self.freshcheckBox.setText(_translate(" フォーム"、" 鱼" )) self.bearcheckBox.setText(_translate(" フォーム"、" 熊掌" )) self.okButton.setText(_translate(" フォーム"、" 确定" )) クラスMyMainForm(QMainWindow、Ui_Form): デフ __init__(自己、親= なし): スーパー(MyMainForm、自己)。__init__ (親) self.setupUi(自己) self.okButton.clicked.connect(自己。 checkCheckBox(セルフ): IF self.freshcheckBox.isChecked()とself.bearcheckBox.isChecked(): QMessageBox.information(セルフ、" メッセージボックスのタイトル"、" 魚と!私はそれはそれを食べる食べたい"QMessageBox.Yes | QMessageBox.No) IF __name__ == " __main__ " : アプリケーション = はQApplication(sys.argvの) mywin = MyMainForm() myWin.show() sys.exit(app.exec_ ())
結果は以下の通りであります:
キーコードが導入されています。
self.freshcheckBox.isChecked()とself.bearcheckBox.isChecked() - >同じで決定するにisChecked()関数を適用します。
QComboBox下拉列表框
下拉列表框是一个集按钮和下拉选项于一体的控件。通常用于固定的枚举值供用户选择时使用。对于下拉列表框的使用最基本的是要知道如何添加下拉列表框中的值以及如何获取下拉框中选择的值。
(1)如何添加下拉列表框中的值。
1、使用addItem() 添加一个下拉选项或者additems() 从列表中添加下拉选项 方法进行添加。
2、如果使用Qt Designer画图实现,可以将ComboBox控件添加到主界面后双击下拉列表框进行打开添加。如下:
(2)如何获取下拉框中的取值
使用函数currentText() 返回选项中的文本进行获取
ComboBox示例完整代码如下:
# -*- coding: utf-8 -*- import sys from PyQt5 import QtCore, QtGui, QtWidgets from PyQt5.QtWidgets import QApplication, QMainWindow, QMessageBox, QComboBox class Ui_Form(object): def setupUi(self, Form): Form.setObjectName("Form") Form.resize(400, 130) self.comboBox = QtWidgets.QComboBox(Form) self.comboBox.setGeometry(QtCore.QRect(80, 50, 69, 22)) self.comboBox.setObjectName("comboBox") self.comboBox.addItem("") self.comboBox.addItem("") self.comboBox.addItem("") self.comboBox.addItem("") self.okButton = QtWidgets.QPushButton(Form) self.okButton.setGeometry(QtCore.QRect(190, 50, 75, 23)) self.okButton.setObjectName("okButton") self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form) def retranslateUi(self, Form): _translate = QtCore.QCoreApplication.translate Form.setWindowTitle(_translate("Form", "ComboBox下拉框例子")) self.comboBox.setItemText(0, _translate("Form", "Python")) self.comboBox.setItemText(1, _translate("Form", "C++")) self.comboBox.setItemText(2, _translate("Form", "Go")) self.comboBox.setItemText(3, _translate("Form", "Java")) self.okButton.setText(_translate("Form", "确定")) class MyMainForm(QMainWindow, Ui_Form): def __init__(self, parent=None): super(MyMainForm, self).__init__(parent) self.setupUi(self) self.okButton.clicked.connect(self.getComboxBoxValue) def getComboxBoxValue(self): select_value = self.comboBox.currentText() QMessageBox.information(self,"消息框标题","你要学%s,为师给你说道说道!" % (select_value,),QMessageBox.Yes | QMessageBox.No) if __name__ == "__main__": app = QApplication(sys.argv) myWin = MyMainForm() myWin.show() sys.exit(app.exec_())
运行结果如下:
关键代码介绍:
select_value = self.comboBox.currentText() --> 使用currentText()函数获取下拉框中选择的值
小结
RadioButton单选按钮、CheckBox复选框、ComboBox下拉框三种基本控件的使用方法介绍完了。本文中的内容和实例也基本回答了开篇提到的问题。这三种基本控件的使用简单但也很频繁。可以多动手实践一下。上文中的程序都可以直接运行。可以运行看看效果。