pyqt5 textedit 重写点击事件后无法选中文本

2022-07-08 19:07:15 +08:00
 ferencz
import sys
from PyQt5 import QtCore, QtWidgets

def text_change():
    print("change ok")
def text_click(event):
    print("clicked ok ")

app = QtWidgets.QApplication(sys.argv)
textEdit = QtWidgets.QTextEdit()
textEdit.setGeometry(QtCore.QRect(30, 20, 351, 51))
textEdit.setObjectName("textEdit")
textEdit.mousePressEvent = text_click
textEdit.textChanged.connect(text_change)
textEdit.show()
sys.exit(app.exec_())

重写点击事件后,无法选中文本框中的文本 怎么解决呢大佬 是不是覆盖了选中文本的事件? 因为都有一个点击事件?感谢大佬

1298 次点击
所在节点    Python
2 条回复
llsquaer
2022-07-11 14:16:49 +08:00
没记错的话..重写最好用类继承重写..

你这个写法相当于修改了原来的鼠标事件函数..会导致使用这个鼠标事件的所有事情停止.

组件的事件大多是继承至 QWidget 查下这个类的所有方法吧.
junkun
2022-07-14 23:29:13 +08:00
要手动调用基类的功能才行的,所以确实最好用继承。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/864991

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX