Я отчаянно пытаюсь получить ответ на очень простой вопрос.Итак, у меня есть основной код, представляющий собой пользовательский интерфейс с QTextEdit
, и я хочу ограничить количество символов до 140. На мой взгляд, лучшим способом было бы переопределить функции keyPressEvent
и KeyReleaseEvent
.
Для этого я создаю класс с моим пользовательским виджетом редактирования текста:
class CustomTextEdit(QtWidgets.QTextEdit):
def keyPressEvent(self, event, text):
if len(text) > 140:
return
else:
self.setText(text)
Мне здесь не нужно событие.Мне нужно только передать аргумент, который будет содержать текст, который уже написан в текстовом редакторе.Однако, когда я пытаюсь создать QEditText
и передать текущий текст, сказав в своем основном пользовательском интерфейсе:
self.text_edit = QtWidgets.CustomTextEdit()
self.text_edit.keyPressEvent(self.text_edit.toPlainText())
, программа понимает его так, как будто я передаю событие, которое является QKeyEvent
иконечно говорит что у него нет длины.
Что я делаю не так?Как передать событие и аргумент?Это вообще возможно?
Я читаю тонны ответов на похожий вопрос, но все равно не получаю ответа.Пожалуйста, помогите!