先看效果图,选中了几行,然后将选中的内容展示出来。
我设置两个有序序列,分别存储对应的复选框和行内容。
我的行内容是用的 label 标签。
# 存储右边label组件的有序列表 def get_L_btn(self): L_btn=[self.label,self.label_2,self.label_8,self.label_9,self.label_10,self.label_11,self.label_12,self.label_13,self.label_14,self.label_15] return L_btn # 存储左边复选框的有序列表 def get_L_chk(self): L_chk=[self.checkBox,self.checkBox_2,self.checkBox_8,self.checkBox_9,self.checkBox_10,self.checkBox_11,self.checkBox_12,self.checkBox_13,self.checkBox_14,self.checkBox_15] return L_chk
因为他们的位置都是一一对应的,所以当我这个位置的复选框是选中状态的话,这时显示对应位置的标签内容就好了。
isCheckec()
用来判断复选框是否是选中状态。
text()
用来显示 label 标签的内容。
# 展示被选中的行内容 def get_checkBox(self): k=0 L_chk=self.get_L_chk() L_btn=self.get_L_btn() for i in L_chk: if(i.isChecked()): # isChecked()判断复选框是否被选中 print(L_btn[k].text()) k=k+1
全选或不全选的实现是遍历一遍所有复选框,设置选中或不选中。
setChecked(False)
设置复选框不选中。
setChecked(True)
设置复选框选中。
# 清空复选框 def clear_checkBox(self): L_chk=self.get_L_chk() for i in L_chk: i.setChecked(False) # 全选复选框 def all_checkBox(self): L_chk=self.get_L_chk() for i in L_chk: i.setChecked(True)
喜欢的点个赞❤吧!