为了账号安全,请及时绑定邮箱和手机立即绑定

单击按钮时执行按键序列

单击按钮时执行按键序列

胡说叔叔 2024-01-04 17:14:24
我正在尝试使用 PyQt5 和 Python 3.7 在 GUI 应用程序中创建撤消和重做按钮。当单击撤消和重做按钮时,应分别执行按键序列“Ctrl+Z”和“Ctrl+Y”。我已经粗略地浏览了 QShortCut 和 QKeySequence 的文档,但它们似乎是为检测按键序列而不是触发它们而设计的。那么如何实现这些按钮呢?根据 eyllanesc 的评论,我添加此内容是为了更好地解释我想要实现的目标。self.undoButton = self.findChild(QtWidgets.QPushButton, 'undoButton')self.undoButton.clicked.connect(self.undoButtonPressed)self.anyPlainTextEdit = self.findChild(QtWidgets.QPlainTextEdit, 'anyPlainTextEdit')# Function to Execute Key Sequencedef undoButtonPressed(self):    # Execute Ctrl+Z Key Sequence我想知道这是否可能。如果不是,我是否应该在单独的变量中维护 PlainTextArea 的先前值和当前值,并相应地设置 PlainTextArea 的值?
查看完整描述

1 回答

?
侃侃尔雅

TA贡献1801条经验 获得超15个赞

您不必启动快捷方式来启用重做或撤消,只需调用插槽redo()undo()在按下按钮时:

self.undoButton.clicked.connect(self.anyPlainTextEdit.undo)
self.redoButton.clicked.connect(self.anyPlainTextEdit.redo)


查看完整回答
反对 回复 2024-01-04
  • 1 回答
  • 0 关注
  • 48 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信