Я хочу использовать QTextEdit
(в режиме только для чтения), чтобы показать гипертекстовую ссылку, я имел обыкновение делатьClickable гиперссылка в QTextEdit
QTextEdit *textEdit = new QTextEdit;
QTextCursor cursor(textEdit->document());
textEdit->setTextCursor(cursor);
cursor->insertHtml("<a href=\"www.google.com\" >Google</a>");
textEdit->show();
этот код будет отображаться в Google в качестве гиперссылок, но не в состоянии нажать кнопку.
И если бы я использовал
QTextEdit *textEdit = new QTextEdit;
QTextCursor cursor(textEdit->document());
textEdit->setTextCursor(cursor);
QTextCharFormat linkFormat = cursor.charFormat();
linkFormat.setAnchor(true);
linkFormat.setAnchorHref("http://www.google.com");
linkFormat.setAnchorName("Google");
cursor.insertText("Google", linkFormat);
, то ничего не произойдет. «Google» - это обычный текст.
Пожалуйста, помогите мне вставить интерактивную гиперссылку на QTextEdit
.
Примечание: если вы используете setTextInteractionFlag() с QTextEdit, нет никакого способа, чтобы обнаружить связь была нажата. Если вы хотите вручную обработать активированную ссылку/якорь, вы должны использовать QTextBrowser. – btse