pyqt5-快捷键QShortcut

python 复制代码
import sys
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *

"""
下面示例揭示了,当关键字绑定的控件出现的时候,快捷键才管用,
绑定的控件没有出现的时候快捷键无效
"""


class Demo1(QMainWindow):
    def __init__(self):
        super().__init__()
        form_layout = QFormLayout()
        self.text_edit = QTextEdit()
        shortcut_show_msg = QShortcut(QKeySequence(Qt.CTRL + Qt.Key_M), self.text_edit)
        shortcut_show_msg.activated.connect(lambda: print('你好'))
        button = QPushButton("显示/隐藏")
        button.clicked.connect(self.show_or_hide)
        form_layout.addRow("文本行", self.text_edit)
        form_layout.addWidget(QTextEdit())
        form_layout.addWidget(button)
        widget = QWidget()
        widget.setLayout(form_layout)
        self.setCentralWidget(widget)

    def show_or_hide(self):
        if self.text_edit.isVisible():
            self.text_edit.setVisible(False)
        else:
            self.text_edit.setVisible(True)


if __name__ == '__main__':
    app = QApplication(sys.argv)
    window = Demo1()
    window.show()
    sys.exit(app.exec_())
相关推荐
mazo_command21 分钟前
【MATLAB课设五子棋教程】(附源码)
开发语言·matlab
IT猿手24 分钟前
多目标应用(一):多目标麋鹿优化算法(MOEHO)求解10个工程应用,提供完整MATLAB代码
开发语言·人工智能·算法·机器学习·matlab
青春男大25 分钟前
java栈--数据结构
java·开发语言·数据结构·学习·eclipse
88号技师25 分钟前
几款性能优秀的差分进化算法DE(SaDE、JADE,SHADE,LSHADE、LSHADE_SPACMA、LSHADE_EpSin)-附Matlab免费代码
开发语言·人工智能·算法·matlab·优化算法
Zer0_on28 分钟前
数据结构栈和队列
c语言·开发语言·数据结构
一只小bit28 分钟前
数据结构之栈,队列,树
c语言·开发语言·数据结构·c++
沐霜枫叶1 小时前
解决pycharm无法识别miniconda
ide·python·pycharm
一个没有本领的人1 小时前
win11+matlab2021a配置C-COT
c语言·开发语言·matlab·目标跟踪
途途途途2 小时前
精选9个自动化任务的Python脚本精选
数据库·python·自动化
一只自律的鸡2 小时前
C项目 天天酷跑(下篇)
c语言·开发语言