Python 3:PyQt:禁用复选框+不灰显+显示工具提示(Python 3: PyQt: Make checkbox disabled + not grayed out + display tooltip)
我发现这样做的唯一方法是:如何使QCheckBox只读,但不是灰显 。 但是,这会禁用鼠标与控件的交互。 但是当鼠标悬停在控件上时,我需要显示工具提示。 我怎样才能做到这一点?
The only way I found to do this is here: How to make QCheckBox readonly, but not grayed-out. This, however, disables mouse interactions with the control. But I need the tooltip to be displayed when mouse is over the control. How can I achieve this?
最满意答案
如果我理解正确,这就是你要求的,一个显示工具提示的禁用复选框:
import sys from PyQt4 import QtGui, QtCore class Example(QtGui.QWidget): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): self.cb = QtGui.QCheckBox('Disabled CheckBox showing tooltips', self) self.cb.move(20, 20) self.cb.toggle() # self.cb.setEnabled(False) # self.cb.setStyleSheet("color: black") # self.cb.setAttribute(QtCore.Qt.WA_AlwaysShowToolTips) self.cb.setToolTip ('my checkBox') self.cb.toggled.connect(self.prevent_toggle) self.setGeometry(300, 300, 250, 50) self.setWindowTitle('QtGui.QCheckBox') self.show() def prevent_toggle(self): self.cb.setChecked(QtCore.Qt.Checked) def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()If I've understood correctly, this is what you'd be asking for, a disabled checkbox showing tooltips:
import sys from PyQt4 import QtGui, QtCore class Example(QtGui.QWidget): def __init__(self): super(Example, self).__init__() self.initUI() def initUI(self): self.cb = QtGui.QCheckBox('Disabled CheckBox showing tooltips', self) self.cb.move(20, 20) self.cb.toggle() # self.cb.setEnabled(False) # self.cb.setStyleSheet("color: black") # self.cb.setAttribute(QtCore.Qt.WA_AlwaysShowToolTips) self.cb.setToolTip ('my checkBox') self.cb.toggled.connect(self.prevent_toggle) self.setGeometry(300, 300, 250, 50) self.setWindowTitle('QtGui.QCheckBox') self.show() def prevent_toggle(self): self.cb.setChecked(QtCore.Qt.Checked) def main(): app = QtGui.QApplication(sys.argv) ex = Example() sys.exit(app.exec_()) if __name__ == '__main__': main()更多推荐
发布评论