PyQt5-按钮类快捷键的设置方法

2025-10-23 00:43:42

1、导入模块,创建应用程序对象。

from PyQt5.Qt import *

import sys

app = QApplication(sys.argv)

 

sys.exit(app.exec_())

PyQt5-按钮类快捷键的设置方法

2、定义一个控件类对象,作为顶层窗口,设置初始值。

class MyWindow(QWidget):

 

   def __init__(self):

 

       super().__init__()

 

       self.resize(300,300)

 

       self.setWindowTitle('按钮快捷键设置')

 

       self.setup_ui()

 

   def setup_ui(self):

 

       pass

PyQt5-按钮类快捷键的设置方法

3、实例化一个窗口并能显示。

w=MyWindow()

 

w.show()

PyQt5-按钮类快捷键的设置方法

4、创建一个按钮,设置初始值:

btn=QPushButton(self)

 

btn.move(50,50)

 

btn.resize(140,60)

 

btn.setStyleSheet('background-color:gold')

PyQt5-按钮类快捷键的设置方法

5、第一种方法,直接在提示文本的字母前加上&字符,快捷键即为alt加&符号后面的字母。例如: TEST &BUTTON,那么快捷键就是alt+b

当按下alt时,&后面的字母会添加一个下划线。

btn.setText('TEST &BUTTON')

PyQt5-按钮类快捷键的设置方法

6、添加一个信号槽。进行测试。可以看到很方便的设置了快捷。

btn.clicked.connect(lambda :print('测试快捷键;'))

PyQt5-按钮类快捷键的设置方法

7、但这种方法局限性很大,只能是alt+字母,如果是中文,或者没有字符,就要用到一个方法。setShortcut(key),参数key是字符串,可以是单个字符,或修饰键加字符,例如‘shift+p'

btn.setText('测试按钮')

 

btn.setShortcut('shift+p')

 

btn.clicked.connect(lambda :print('测试快捷键;'))

PyQt5-按钮类快捷键的设置方法

8、同理如果是个图标按钮也只能用setShortcut()函数。

btn.setIcon(QIcon('bd2.png'))

 

btn.setIconSize(QSize(130,50))

 

btn.setShortcut('shift+p')

 

btn.clicked.connect(lambda :print('测试快捷键;'))

PyQt5-按钮类快捷键的设置方法

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢