我迟到了 – 看起来你有一个有效的解决方案.为了将来参考,您可以采用的另一种方式是使用鼠标事件 – 这可以保持所有信号的工作方式:

from PyQt4 import QtGui, QtCore

class MyCheckBox(QtGui.QCheckBox):

def __init__( self, *args ):

super(MyCheckBox, self).__init__(*args) # will fail if passing **kwargs

self._readOnly = False

def isReadOnly( self ):

return self._readOnly

def mousePressEvent( self, event ):

if ( self.isReadOnly() ):

event.accept()

else:

super(MyCheckBox, self).mousePressEvent(event)

def mouseMoveEvent( self, event ):

if ( self.isReadOnly() ):

event.accept()

else:

super(MyCheckBox, self).mouseMoveEvent(event)

def mouseReleaseEvent( self, event ):

if ( self.isReadOnly() ):

event.accept()

else:

super(MyCheckBox, self).mouseReleaseEvent(event)

# Handle event in which the widget has focus and the spacebar is pressed.

def keyPressEvent( self, event ):

if ( self.isReadOnly() ):

event.accept()

else:

super(MyCheckBox, self).keyPressEvent(event)

@QtCore.pyqtSlot(bool)

def setReadOnly( self, state ):

self._readOnly = state

readOnly = QtCore.pyqtProperty(bool, isReadOnly, setReadOnly)

以这种方式设置代码可以为您提供一些(您可能或可能不关心)但在开发自定义Qt小部件时非常有用:

>消耗事件会阻止信号发射,因此您仍然可以将其他插槽连接到clicked&切换.如果你正在寻找这些信号然后只是打开/关闭值 – 那么听取这些信号的其他小部件将被错误地触发>使用isReadOnly / setReadOnly使类遵循Qt编码样式>创建pyqtSignals&如果将插件公开给Qt的Designer,pyqtSlots会有所帮助

python中复选框取消修改_python – 如何在PySide / PyQt中设置“只读复选框”相关推荐

  1. 在React中设置一个复选框“ check”属性

    在React中设置一个复选框" check"属性 reactjs 我在React和复选框方面遇到了一个非常烦人的问题.我正在使用的应用程序需要复选框列表,这些复选框代表保留在后端的 ...

  2. 03-menuStrip设置带有复选框的按钮

    自己写了一个小例子,在menuStrip菜单栏中设置带有复选框的按钮,实现工具栏和状态栏的显示和隐藏.[工具栏和状态栏按钮默认是被选中的,即显示] 1.设置界面 2.属性设置 将[工具栏]和[状态栏] ...

  3. html 复选框变大,复选框字体大小如何设置 wps复选框文字大小怎么调整

    Excel 怎样修改窗体/复选框中文字的大小 Excel 修改窗体/复选框中文字的大小的具体步骤如下: 需要准备的材料分别是:电脑.Excel 表格. 以win7系统.Excel 表格2010版为例: ...

  4. 纯CSS设置Checkbox复选框控件的样式

    下面是纯CSS设置Checkbox复选框控件的五种简单样式,有兴趣的可以进行改动将其变成自己想要的样式. 首先,需要添加一段CSS隐藏所有的Checkbox复选框,下面我们会改变它的外观.要做到点需要 ...

  5. 系统首选dns服务器修改,如何在Windows系统中设置首选DNS

    有时候可能需要修改或者调整 DNS 服务器地址的设置,以达到优化网络连接速度的效果.那么如何在Windows系统中设置首选DNS呢?具体请看下面学习啦小编介绍的操作方法! 在Windows系统中设置首 ...

  6. 在win7中要修改计算机的虚拟内存,如何在Win7系统中设置计算机虚拟内存?

    计算机虚拟内存的设置非常重要.合理地设置虚拟内存的大小可以使我们的计算机充分发挥其性能,而不会浪费或不堪重负. 那么在Win7系统中,我们如何设置计算机虚拟内存?多少虚拟内存是合理的?让我在下面告诉你 ...

  7. MFC中CListCtrl添加复选框,实现单选

    记录MFC项目中CListCtrl添加复选框,实现单选步骤 添加复选框 绑定控件变量 CListCtrl m_ctrList; OnInitDialog函数中添加 m_ctrList.SetExten ...

  8. python tkinter画笑脸_python – 如何在tkinter窗口中绘制图像

    如何在tkinter窗口中绘制图像(我使用的是 python 3.3)?我正在寻找一个可以在tkinter窗口的给定位置绘制图像的语句. 是啊- 任何答案将不胜感激.这里是我想要使用代码的程序的源代码 ...

  9. ABAP 设置ALV复选框

    ALV有两种写法,一种是FUCTION(FM),另一种就是OOALV DATA BEGIN OF gs_data,sel,gjahr TYPE acdoca-gjahr, "年度poper ...

最新文章

  1. Linux 创建用户分配文件夹权限
  2. NYOJ 106 背包问题
  3. Yii的beforeAction
  4. WebSocket webshop后台服务器的一些全局数据结构
  5. 计算机基础知识二进制转换,计算机基础知识数制转换
  6. ARTetris-AR版俄罗斯方块的源码解析
  7. ASP.NET XML高级编程(一、XML技术简介)
  8. Docker容器kali镜像导出/导入
  9. 安卓studio没有java.xml_Android文件(Java和XML)被奇怪的XML替换
  10. ESP32使用PCF8563时钟模块进行网络校时
  11. matlab课程论文2500字,matlab课程论文模板
  12. SECS/GEM实现(一)半导体通讯协议软件,C、C++使用介绍
  13. 软件架构风格-调用/返回风格
  14. 立方单位换算计算机,立方进率换算(立方进率单位换算表)
  15. zabbix报警 Lack of free swap space on zabbix
  16. 微处理器和由微型计算机构成,微处理器的组成
  17. 2021年9月国产数据库排行榜:达梦奋起直追紧逼OceanBase,openGauss反超PolarDB再升一位...
  18. 《无聊教程●第一课●教你编一个牛逼的VBScript邮件发送器》
  19. 微信小程序点赞+取消点赞多项点击
  20. 信息增益,信息增益率,Gini

热门文章

  1. python中的@property(get与set作用
  2. python——作用域 == is
  3. c语言不会可以学好java吗_不会C语言能学Java吗
  4. wordpress acf字段 不同样式_提升wordpress执行效率二次开发实录
  5. 人在斯坦福,刚上CS224n
  6. 献给新一代人工智能后浪——《后丹》
  7. 卖萌屋算法岗面试手册上线!通往面试自由之路
  8. Spring Boot 2.x基础教程:Swagger静态文档的生成
  9. 论文浅尝 | 可建模语义分层的知识图谱补全方法
  10. 前端如何做极致的首屏渲染速度优化