pyqt5-快捷键

发布时间 2023-10-18 01:36:31作者: 挖洞404

1、介绍

pyqt5提供了多种快捷键设置方式,即基于一个或多个键盘按键的组合,调用特定方法或函数。

2、组件直接操作

部分组件提供了直接设置快捷键的方法,注意并非是全部组件支持,反而说是极少数。

2.1 QAbstractButton类

普通按钮QPushButton类、单选框QRadioButton类、多选框QCheckBox类都继承了QAbstractButton类。

setShortcut(self, key: Union[QKeySequence, QKeySequence.StandardKey, str, int])

setShortcut('x')
setShortcut('shift+x')
  • 设置快捷键
  • 一般来说,必须是该方法所属组件聚焦,快捷键才有效。但是并不完全是,比如设置双键组合快捷键时,shift+return可以使焦点在文本框而触发按钮的该快捷键。
  • 可以是直接的单个按键,也可以是按键组合。忽略大小写
  • 重复调用该方法,最后一次有效,覆盖前面的设置
  • 按键组合时,基于+进行连接。需要注意,一般是ctrl/shift+其它键组成双键。三键、字母/数字与字母/数字等都无法响应
  •  enter和return分别表示确认和回车键
shortcut(self) -> QKeySequence
  •  获取快捷键
setShortcutEnabled(self, id: int, enabled: bool = True)
  • 设置快捷键是否可用
releaseShortcut(self, id: int)
  • 释放快捷键
setShortcutAutoRepeat(self, id: int, enabled: bool = True)
  •  
grabShortcut(self, key: Union[QKeySequence, QKeySequence.StandardKey, str, int], context: Qt.ShortcutContext = Qt.WindowShortcut) -> int
  •  

 2.2 QAction类