Как я могу получить доступ к модифицированному QLabel? - PullRequest
4 голосов
/ 26 октября 2010

Я создаю экземпляр редактируемого QLabel следующим образом:

QLabel foo("some text");
foo.setTextInteractionFlags(Qt::TextEditorInteraction);

Я могу щелкнуть текст и изменить его, и измененный текст должен быть где-то в буфере, но даже после изучения полей данных в Qt Creator я не вижу, где он находится:

QString notmodified = foo.text(); // only returns the original text

это где-то измененный текст, к которому я могу получить доступ?

РЕДАКТИРОВАТЬ: я думаю, что использовать что-то еще действительно проще, но мне все еще интересно узнать ответ на мой вопрос.

РЕДАКТИРОВАТЬ: ОК, это была неделя. "Ответил".

Ответы [ 2 ]

5 голосов
/ 26 октября 2010

Я бы сказал, что хотя вы можете установить этот флаг на QLabel (Qt::TextInteractionFlag используется другими виджетами, кроме QLabel), он не предназначен для редактирования.

ПочемуВы не используете QLineEdit?

0 голосов
/ 26 октября 2010

Для редактируемого текстового поля у вас есть хороший выбор, QLineEdit или QTextEdit. Используйте один из этих виджетов. QLabel предназначен только для маркировки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...