我的 PySide 项目中有许多旋转框,我想更改行为,因此用户需要单击字段来更改值,然后按 Enter 键。我想禁用旋转框的滚轮行为。我尝试过设置焦点策略,但没有生效。
def light_label_event(self,text,checked):
print("this is the pressed button's label", text)
def populate_lights(self):
for light in self.lights:
light_label = QtWidgets.QSpinBox()
light_label.setFocusPolicy(QtCore.Qt.StrongFocus)
Run Code Online (Sandbox Code Playgroud)
您必须创建一个自定义 SpinBox 并覆盖wheelEvent 方法:
from PySide2 import QtWidgets
class SpinBox(QtWidgets.QSpinBox):
def wheelEvent(self, event):
event.ignore()
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
w = SpinBox()
w.show()
sys.exit(app.exec_())
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2747 次 |
| 最近记录: |