最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python GUI庫圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細使用方法與實例

 更新時間:2020年02月28日 15:02:33   作者:jia666666  
這篇文章主要介紹了python GUI庫圖形界面開發(fā)之PyQt5單選按鈕控件QRadioButton詳細使用方法與實例,需要的朋友可以參考下

PyQt5單選按鈕控件QRadioButton簡介

QRadioButton 繼承自 QAbstractButton,其主要作用提供用戶一些互斥的按鈕。

QRadioButton 只有一個的時候,功能類似于復選框, 可以選擇和取消,但是如果有多個,則必須有一個被選中

QRadioButton類中常用的方法

方法 描述
setCheckanle() 設置按鈕是否已經(jīng)被選中,可以改變單選按鈕的選中狀態(tài),如果設置為True則表示單選按鈕將保持以點擊和釋放狀態(tài)
isChecked() 返回單選按鈕的狀態(tài),返回值True或False
setText() 設置單選按鈕顯示的文本
text() 返回單選按鈕顯示的文本

QRadioButton按鈕的使用實例

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *
from PyQt5.QtCore import *

class RadioDemo(QWidget):
 def __init__(self,parent=None):
  super(RadioDemo,self).__init__(parent)
  #水平布局
  layout=QHBoxLayout()


  self.btn1=QRadioButton('Button1')
  #默認選中btn1
  self.btn1.setChecked(True)
  #toggled信號與槽函數(shù)綁定
  self.btn1.toggled.connect(lambda :self.btnstate(self.btn1))
  layout.addWidget(self.btn1)

  self.btn2 = QRadioButton('Button2')
  self.btn2.toggled.connect(lambda: self.btnstate(self.btn2))
  layout.addWidget(self.btn2)

  self.setLayout(layout)
  self.setWindowTitle('RadioButton demo')

 def btnstate(self,btn):
 #輸出按鈕1與按鈕2的狀態(tài),選中還是沒選中
  if btn.text()=='Button1':
   if btn.isChecked()==True:
    print(btn.text()+"is selected")
   else:
    print(btn.text()+"is deselected")

  if btn.text()=="Button2":
   if btn.isChecked() == True:
    print(btn.text() + "is selected")
   else:
    print(btn.text() + "is deselected")
if __name__ == '__main__':
 app=QApplication(sys.argv)
 radioDemo=RadioDemo()
 radioDemo.show()
 sys.exit(app.exec_())

效果如圖

QRadioButton代碼分析

在這個例子中,兩個互斥的單選框被放置在窗口中

第一個單選按鈕btn1,被設置成默認狀態(tài)

self.btn1.setChecked(True)

當選擇兩個按鈕相互切換時,按鈕的狀態(tài)發(fā)生改變,將觸發(fā)toggle信號,并與槽函數(shù)btnstate()連接。使用lamdba的方式允許將源信號傳遞給槽函數(shù),將按鈕作為參數(shù)

self.btn1.toggled.connect(lambda :self.btnstate(self.btn1))
self.btn1.toggled.connect(lambda :self.btnstate(self.btn1))

當發(fā)射toggled信號后,使用btnstate()函數(shù)來檢查按鈕的狀態(tài)

所有QRadioButton的控件是互斥的,所以也可以通過多個父控件來對QRadioButton進行分組。不過,一般使用QButtonGroup來對按鍵進行分組。通過按鍵分組的方式來讓不同類型的QRadioButton不互相排斥。

本文主要講解了PyQt5單選按鈕控件QRadioButton詳細使用方法與實例,更多關于PyQt5控件知識請查看下面的相關鏈接

相關文章

最新評論

合川市| 平邑县| 库尔勒市| 山东| 永兴县| 黄大仙区| 宁陵县| 鹤壁市| 沧州市| 三门县| 南阳市| 油尖旺区| 同心县| 中阳县| 琼中| 三河市| 清水县| 都安| 德保县| 晋中市| 巫山县| 安化县| 天等县| 淮阳县| 沾益县| 双牌县| 乌苏市| 通化市| 慈溪市| 东至县| 邵阳市| 襄汾县| 天津市| 霍邱县| 英山县| 融水| 即墨市| 崇州市| 永年县| 东至县| 西和县|