我正在PyQt5中工作,希望能够像QPushButton一样在按键预压上选中/取消选中QCheckBox。我已经检查了文档和Google,但找不到解决方法。

最佳答案

您必须覆盖keyPressEvent方法并调用nextCheckState()方法以更改QCheckBox的状态:

import sys
from PyQt5 import QtCore, QtGui, QtWidgets


class CheckBox(QtWidgets.QCheckBox):
    def keyPressEvent(self, event):
        if event.key() in (QtCore.Qt.Key_Enter, QtCore.Qt.Key_Return):
            self.nextCheckState()
        super(CheckBox, self).keyPressEvent(event)


if __name__ == "__main__":
    app = QtWidgets.QApplication(sys.argv)
    w = CheckBox("StackOverflow")
    w.show()
    sys.exit(app.exec_())

关于python - 是否可以通过按键检查QCheckBox?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55842175/

10-12 21:11