其他分享
首页 > 其他分享> > PyQt5 控件学习(一个一个学习之QCheckBox)

PyQt5 控件学习(一个一个学习之QCheckBox)

作者:互联网

 

 

 QCheckBox继承图:

 

 

QCheckBox描述:

一般是方框图标,多选操作!

 

 

QCheckBox继承:

它继承自 QAbstarctButton

 

QCheckBox功能作用:

 

from PyQt5.Qt import * #刚开始学习可以这样一下导入
import sys
#1,创建app
app  = QApplication(sys.argv)


#2,控件的操作:
#创建控件
window = QWidget()


#设置控件
window.setWindowTitle("QCheckBox")
window.resize(500,500)

checkbox1 = QCheckBox(window)
checkbox1.setText("Python")


checkbox2 = QCheckBox(window)
checkbox2.setText("C++")
checkbox2.move(0,30)

checkbox3 = QCheckBox(window)
checkbox3.setText("C")
checkbox3.move(0,60)



#展示控件
window.show()

#3,进入消息循环
sys.exit(app.exec_())
View Code

 

from PyQt5.Qt import * #刚开始学习可以这样一下导入
import sys
#1,创建app
app  = QApplication(sys.argv)


#2,控件的操作:
#创建控件
window = QWidget()


#设置控件
window.setWindowTitle("QCheckBox")
window.resize(500,500)

checkbox1 = QCheckBox(window)
checkbox1.setText("&Python")
############################设置图标和快捷键###############################
checkbox1.setIcon(QIcon("icon.ico"))
checkbox1.setShortcut("Ctrl+P")   
############################设置图标和快捷键###############################


checkbox2 = QCheckBox(window)
checkbox2.setText("C++")
checkbox2.move(0,30)

checkbox3 = QCheckBox(window)
checkbox3.setText("C")
checkbox3.move(0,60)



#展示控件
window.show()

#3,进入消息循环
sys.exit(app.exec_())
view code

它默认是展示两种状态,可以通过设置来展示三种状态。

from PyQt5.Qt import * #刚开始学习可以这样一下导入
import sys
#1,创建app
app  = QApplication(sys.argv)


#2,控件的操作:
#创建控件
window = QWidget()


#设置控件
window.setWindowTitle("QCheckBox")
window.resize(500,500)

checkbox1 = QCheckBox(window)
checkbox1.setText("Python")

############################设置三种状态###############################
checkbox1.setTristate(True)

print(checkbox1.isTristate())
############################设置三种状态###############################


checkbox2 = QCheckBox(window)
checkbox2.setText("C++")
checkbox2.move(0,30)

checkbox3 = QCheckBox(window)
checkbox3.setText("C")
checkbox3.move(0,60)



#展示控件
window.show()

#3,进入消息循环
sys.exit(app.exec_())
设置开启三种状态

设置三种状态!通过枚举值来设置的!

from PyQt5.Qt import * #刚开始学习可以这样一下导入
import sys
#1,创建app
app  = QApplication(sys.argv)


#2,控件的操作:
#创建控件
window = QWidget()


#设置控件
window.setWindowTitle("QCheckBox")
window.resize(500,500)

checkbox1 = QCheckBox(window)
checkbox1.setText("Python")

checkbox1.setTristate(True)

############################设置复选框的状态(有三种状态的)###############################
checkbox1.setCheckState(Qt.PartiallyChecked)  # 半选中状态
# checkbox1.setCheckState(Qt.Checked)  #选中
# checkbox1.setCheckState(Qt.Unchecked) #未选中

############################设置复选框的状态(有三种状态的)###############################



checkbox2 = QCheckBox(window)
checkbox2.setText("C++")
checkbox2.move(0,30)

checkbox3 = QCheckBox(window)
checkbox3.setText("C")
checkbox3.move(0,60)



#展示控件
window.show()

#3,进入消息循环
sys.exit(app.exec_())
View Code

QCheckBox信号:

 

它之所以多了个信号,是因为它有的时候是三态,所以之前的toggled 就不支持三态了。

0  未选中,1 半选中 ,2 全选中

from PyQt5.Qt import * #刚开始学习可以这样一下导入
import sys
#1,创建app
app  = QApplication(sys.argv)


#2,控件的操作:
#创建控件
window = QWidget()


#设置控件
window.setWindowTitle("QCheckBox")
window.resize(500,500)

checkbox1 = QCheckBox(window)
checkbox1.setText("Python")

checkbox1.setTristate(True)

###########################################################
checkbox1.stateChanged.connect(lambda state:print(state))
###########################################################

checkbox2 = QCheckBox(window)
checkbox2.setText("C++")
checkbox2.move(0,30)

checkbox3 = QCheckBox(window)
checkbox3.setText("C")
checkbox3.move(0,60)



#展示控件
window.show()

#3,进入消息循环
sys.exit(app.exec_())
View Code

 

如果此时要是用toggled信号的话,半选和全选将都是True ,而不选是False 

 

总结:到此为止,就说完了所有的按钮控件,下面是输入控件:

https://www.cnblogs.com/zach0812/p/11372991.html

 

标签:控件,PyQt5,QCheckBox,window,checkbox1,checkbox2,checkbox3
来源: https://www.cnblogs.com/zach0812/p/11372324.html