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_())
相关推荐
qq_423233904 分钟前
C++与Python混合编程实战
开发语言·c++·算法
tudficdew5 分钟前
实战:用Python分析某电商销售数据
jvm·数据库·python
m0_7155753417 分钟前
分布式任务调度系统
开发语言·c++·算法
sjjhd65227 分钟前
Python日志记录(Logging)最佳实践
jvm·数据库·python
csbysj202034 分钟前
选择(Selectable)
开发语言
naruto_lnq38 分钟前
泛型编程与STL设计思想
开发语言·c++·算法
2301_821369611 小时前
用Python生成艺术:分形与算法绘图
jvm·数据库·python
:Concerto1 小时前
JavaSE 注解
java·开发语言·sprint
机 _ 长1 小时前
YOLO26 改进 | 基于特征蒸馏 | 知识蒸馏 (Response & Feature-based Distillation)
python·深度学习·机器学习
m0_748708052 小时前
C++中的观察者模式实战
开发语言·c++·算法