Класс QTextBrowser
Класс QTextBrowser предоставляет богатый текстовый браузер с навигацией по гиперссылкам. Подробнее...
| Заголовок: | #include <QTextBrowser> |
| qmake: | QT += widgets |
| Наследует: | QTextEdit |
Свойства
|
|
- 17 свойств унаследовано от QTextEdit
- 3 свойства унаследовано от QAbstractScrollArea
- 6 свойств унаследовано от QFrame
- 59 свойств унаследовано от QWidget
- 1 свойство унаследовано от QObject
Открытые функции
| QTextBrowser(QWidget *parent = Q_NULLPTR) | |
| int | backwardHistoryCount() const |
| void | clearHistory() |
| int | forwardHistoryCount() const |
| QString | historyTitle(int i) const |
| QUrl | historyUrl(int i) const |
| bool | isBackwardAvailable() const |
| bool | isForwardAvailable() const |
| bool | openExternalLinks() const |
| bool | openLinks() const |
| QStringList | searchPaths() const |
| void | setOpenExternalLinks(bool open) |
| void | setOpenLinks(bool open) |
| void | setSearchPaths(const QStringList &paths) |
| QUrl | source() const |
Переопределённые открытые функции
| virtual QVariant | loadResource(int type, const QUrl &name) |
- 62 открытые функции унаследованы от QTextEdit
- 20 открытых функций унаследованы от QAbstractScrollArea
- 14 открытых функций унаследованы от QFrame
- 214 открытых функций унаследованы от QWidget
- 32 открытых функции унаследованы от QObject
- 14 открытых функции унаследованы от QPaintDevice
Открытые слоты
| virtual void | backward() |
| virtual void | forward() |
| virtual void | home() |
| virtual void | reload() |
| virtual void | setSource(const QUrl &name) |
- 25 открытых слотов унаследовано от QTextEdit
- 19 открытых слотов унаследовано от QWidget
- 1 открытый слот унаследовано от QObject
Сигналы
| void | anchorClicked(const QUrl &link) |
| void | backwardAvailable(bool available) |
| void | forwardAvailable(bool available) |
| void | highlighted(const QUrl &link) |
| void | highlighted(const QString &link) |
| void | historyChanged() |
| void | sourceChanged(const QUrl &src) |
- 7 сигналов унаследовано от QTextEdit
- 3 сигнала унаследовано от QWidget
- 2 сигнала унаследовано от QObject
Переопределённые защищённые функции
| virtual bool | event(QEvent *e) |
| virtual bool | focusNextPrevChild(bool next) |
| virtual void | focusOutEvent(QFocusEvent *ev) |
| virtual void | keyPressEvent(QKeyEvent *ev) |
| virtual void | mouseMoveEvent(QMouseEvent *e) |
| virtual void | mousePressEvent(QMouseEvent *e) |
| virtual void | mouseReleaseEvent(QMouseEvent *e) |
| virtual void | paintEvent(QPaintEvent *e) |
- 24 защищённых функции унаследованы от QTextEdit
- 20 защищённых функций унаследованы от QAbstractScrollArea
- 4 защищённых функции унаследованы от QFrame
- 35 защищённых функций унаследованы от QWidget
- 9 защищённых функций унаследованы от QObject
- 1 защищённая функция унаследована от QPaintDevice
Дополнительные унаследованные члены
- 5 статических публичных членов, унаследованных от QWidget
- 11 статических публичных членов, унаследованных от QObject
- 24 защищенных функции, унаследованные от QTextEdit
- 20 защищенных функций, унаследованных от QAbstractScrollArea
- 4 защищенных функции, унаследованные от QFrame
- 35 защищенных функций, унаследованных от QWidget
- 9 защищенных функций, унаследованных от QObject
- 1 защищенная функция, унаследованная от QPaintDevice
- 1 защищенный слот, унаследованный от QWidget
Подробное описание
Класс QTextBrowser предоставляет браузер форматированного текста с навигацией по гиперссылкам.
Этот класс расширяет QTextEdit (в режиме только для чтения), добавляя некоторые функции навигации, позволяющие пользователям переходить по ссылкам в гипертекстовых документах.
Если вы хотите предоставить пользователям редактор форматированного текста, используйте QTextEdit. Если вам нужен браузер текста без навигации по гиперссылкам, используйте QTextEdit и отключите редактирование с помощью QTextEdit::setReadOnly(). Если вам просто нужно отобразить небольшой фрагмент форматированного текста, используйте QLabel.
Источник и содержимое документа
Содержимое QTextEdit устанавливается с помощью setHtml() или setPlainText(), но QTextBrowser также реализует функцию setSource(), что позволяет использовать именованный документ в качестве исходного текста. Имя ищется в списке путей поиска и в каталоге текущей фабрики документов.
Если имя документа заканчивается якорем (например, "#anchor"), браузер текста автоматически прокручивается до этого положения (используя scrollToAnchor()). Когда пользователь щелкает по гиперссылке, браузер сам вызывает setSource() с значением ссылки в качестве аргумента. Вы можете отслеживать текущий источник, подключившись к сигналу sourceChanged().
Навигация
QTextBrowser предоставляет слоты backward() и forward(), которые можно использовать для реализации кнопок «Назад» и «Вперед». Слот home() устанавливает текст на первый отображаемый документ. Сигнал anchorClicked() генерируется, когда пользователь щелкает по якорю. Чтобы переопределить стандартное поведение навигации браузера, вызовите функцию setSource(), чтобы передать новый текст документа в слот, подключенный к этому сигналу.
Если вы хотите загружать документы, хранящиеся в системе ресурсов Qt, используйте qrc в качестве схемы в URL для загрузки. Например, для пути к ресурсу документа :/docs/index.html используйте qrc:/docs/index.html в качестве URL с помощью setSource().
См. также QTextEdit и QTextDocument.
Документация свойств
modified : const bool
Это свойство содержит информацию о том, были ли изменены содержимое браузера текста
openExternalLinks : bool
Указывает, должен ли QTextBrowser автоматически открывать ссылки на внешние источники с помощью QDesktopServices::openUrl() вместо генерации сигнала anchorClicked. Ссылки считаются внешними, если их схема не file или qrc.
Значение по умолчанию — false.
Это свойство было добавлено в Qt 4.2.
Функции доступа:
| bool | openExternalLinks() const |
| void | setOpenExternalLinks(bool open) |
openLinks : bool
Это свойство указывает, должен ли QTextBrowser автоматически открывать ссылки, на которые пользователь пытается перейти с помощью мыши или клавиатуры.
Независимо от значения этого свойства, сигнал anchorClicked всегда генерируется.
Значение по умолчанию — true.
Это свойство было добавлено в Qt 4.3.
Функции доступа:
| bool | openLinks() const |
| void | setOpenLinks(bool open) |
readOnly : bool
Это свойство указывает, является ли браузер текста только для чтения.
По умолчанию это свойство равно true.
Функции доступа:
| bool | isReadOnly() const |
| void | setReadOnly(bool ro) |
searchPaths : QStringList
Это свойство содержит пути поиска, используемые браузером текста для поиска вспомогательного содержимого.
QTextBrowser использует этот список для поиска изображений и документов.
По умолчанию это свойство содержит пустой список строк.
Функции доступа:
| QStringList | searchPaths() const |
| void | setSearchPaths(const QStringList &paths) |
source : QUrl
Это свойство содержит имя отображаемого документа.
Это недействительный URL, если документ не отображается или источник неизвестен.
При установке этого свойства QTextBrowser пытается найти документ с указанным именем в путях свойства searchPaths и каталоге текущего источника, если значение не является абсолютным путем к файлу. Также проверяются необязательные якоря, и документ прокручивается соответствующим образом.
Если первый тег в документе — <qt type=detail>, документ отображается как всплывающее окно, а не как новый документ в окне браузера. В противном случае документ отображается в браузере текста в обычном режиме, и текст устанавливается в содержимое именованного документа с помощью setHtml().
По умолчанию это свойство содержит пустой URL.
Функции доступа:
| QUrl | source() const |
| virtual void | setSource(const QUrl &name) |
undoRedoEnabled : bool
Это свойство содержит информацию о том, поддерживает ли браузер текста операции отмены/повтор.
По умолчанию это свойство равно false.
Функции доступа:
| bool | isUndoRedoEnabled() const |
| void | setUndoRedoEnabled(bool enable) |
Документация функций-членов
QTextBrowser::QTextBrowser(QWidget *parent = Q_NULLPTR)
Создает пустой QTextBrowser с родителем parent.
[signal] void QTextBrowser::anchorClicked(const QUrl &link)
Этот сигнал генерируется, когда пользователь щелкает по якорю. URL, на который указывает якорь, передается в link.
Обратите внимание, что браузер автоматически обработает навигацию к указанному в link месту, если свойство openLinks не установлено в false или вы не вызываете setSource() в подключенном слоте. Этот механизм используется для переопределения стандартных функций навигации браузера.
[virtual slot] void QTextBrowser::backward()
Изменяет отображаемый документ на предыдущий документ в списке документов, созданном при навигации по ссылкам. Ничего не делает, если предыдущий документ отсутствует.
См. также forward() и backwardAvailable().
[signal] void QTextBrowser::backwardAvailable(bool available)
Этот сигнал генерируется, когда изменяется доступность backward(). available имеет значение false, когда пользователь находится на странице home; в противном случае — true.
int QTextBrowser::backwardHistoryCount() const
Возвращает количество мест в истории назад.
Эта функция была добавлена в Qt 4.4.
void QTextBrowser::clearHistory()
Очищает историю посещенных документов и отключает навигацию вперёд и назад.
Эта функция была добавлена в Qt 4.2.
См. также backward() и forward().
[virtual protected] bool QTextBrowser::event(QEvent *e)
Переопределено из QObject::event().
[virtual protected] bool QTextBrowser::focusNextPrevChild(bool next)
Переопределено из QWidget::focusNextPrevChild().
[virtual protected] void QTextBrowser::focusOutEvent(QFocusEvent *ev)
Переопределено из QWidget::focusOutEvent().
[virtual slot] void QTextBrowser::forward()
Изменяет отображаемый документ на следующий документ в списке документов, созданном при навигации по ссылкам. Ничего не делает, если следующего документа нет.
См. также backward() и forwardAvailable().
[signal] void QTextBrowser::forwardAvailable(bool available)
Этот сигнал испускается, когда изменяется доступность forward(). available имеет значение true после навигации назад с помощью backward() и false при навигации вперёд с помощью forward().
int QTextBrowser::forwardHistoryCount() const
Возвращает количество позиций вперёд в истории.
Эта функция была добавлена в Qt 4.4.
[signal] void QTextBrowser::highlighted(const QUrl &link)
Этот сигнал испускается, когда пользователь выбрал, но не активировал якорь в документе. URL, на который указывает якорь, передаётся в link.
Примечание: Сигнал highlighted перегружен в этом классе. Для подключения к этому сигналу с использованием синтаксиса указателя на функцию Qt предоставляет удобную вспомогательную функцию, как показано в этом примере:
connect(textBrowser, QOverload<const QUrl &>::of(&QTextBrowser::highlighted),
[=](const QUrl &link){ /* ... */ });
[signal] void QTextBrowser::highlighted(const QString &link)
Это перегруженный метод.
Удобный сигнал, позволяющий подключиться к слоту, который принимает только QString, например, к методу message() в QStatusBar.
Примечание: Сигнал highlighted перегружен в этом классе. Для подключения к этому сигналу с использованием синтаксиса указателя на функцию Qt предоставляет удобную вспомогательную функцию, как показано в этом примере:
connect(textBrowser, QOverload<const QString &>::of(&QTextBrowser::highlighted),
[=](const QString &link){ /* ... */ });
[signal] void QTextBrowser::historyChanged()
Этот сигнал испускается при изменении истории.
Эта функция была добавлена в Qt 4.4.
См. также historyTitle() и historyUrl().
QString QTextBrowser::historyTitle(int i) const
Возвращает documentTitle() элемента истории.
| Входные данные | Возврат |
|---|---|
| i < 0 | История backward() |
| i == 0 | Текущий, см. QTextBrowser::source() |
| i > 0 | История forward() |
backaction.setToolTip(browser.historyTitle(-1)); forwardaction.setToolTip(browser.historyTitle(+1));
Эта функция была добавлена в Qt 4.4.
QUrl QTextBrowser::historyUrl(int i) const
Возвращает URL элемента истории.
| Входные данные | Возврат |
|---|---|
| i < 0 | История backward() |
| i == 0 | Текущий, см. QTextBrowser::source() |
| i > 0 | История forward() |
Эта функция была добавлена в Qt 4.4.
[virtual slot] void QTextBrowser::home()
Изменяет отображаемый документ на первый документ из истории.
bool QTextBrowser::isBackwardAvailable() const
Возвращает true , если браузер может перейти назад в истории документов с помощью backward().
Эта функция была добавлена в Qt 4.2.
См. также backwardAvailable() и backward().
bool QTextBrowser::isForwardAvailable() const
Возвращает true , если браузер может перейти вперёд в истории документов с помощью forward().
Эта функция была добавлена в Qt 4.2.
См. также forwardAvailable() и forward().
[virtual protected] void QTextBrowser::keyPressEvent(QKeyEvent *ev)
Переопределено из QWidget::keyPressEvent().
Событие ev используется для обеспечения следующих комбинаций клавиш:
| Нажатие клавиш | Действие |
|---|---|
| Alt+стрелка влево | backward() |
| Alt+стрелка вправо | forward() |
| Alt+стрелка вверх | home() |
[virtual] QVariant QTextBrowser::loadResource(int type, const QUrl &name)
Переопределено из QTextEdit::loadResource().
Этот метод вызывается при загрузке документа и для каждого изображения в документе. type указывает тип загружаемого ресурса. Некорректное значение QVariant возвращается, если ресурс не может быть загружен.
Стандартная реализация игнорирует type и пытается найти ресурсы, интерпретируя name как имя файла. Если это не абсолютный путь, она пытается найти файл в путях свойства searchPaths и в той же директории, что и текущий источник. В случае успеха, результатом является QVariant, хранящая QByteArray с содержимым файла.
Если вы переопределяете этот метод, вы можете возвращать другие типы QVariant. В таблице ниже показано, какие типы вариантов поддерживаются в зависимости от типа ресурса:
| Тип ресурса | Тип QVariant |
|---|---|
| QTextDocument::HtmlResource | QString или QByteArray |
| QTextDocument::ImageResource | QImage, QPixmap или QByteArray |
| QTextDocument::StyleSheetResource | QString или QByteArray |
[virtual protected] void QTextBrowser::mouseMoveEvent(QMouseEvent *e)
Переопределено из QWidget::mouseMoveEvent().
[virtual protected] void QTextBrowser::mousePressEvent(QMouseEvent *e)
Переопределено из QWidget::mousePressEvent().
[virtual protected] void QTextBrowser::mouseReleaseEvent(QMouseEvent *e)
Переопределено из QWidget::mouseReleaseEvent().
[virtual protected] void QTextBrowser::paintEvent(QPaintEvent *e)
Переопределено из QWidget::paintEvent().
[virtual slot] void QTextBrowser::reload()
Перезагружает текущий источник.
[signal] void QTextBrowser::sourceChanged(const QUrl &src)
Этот сигнал испускается при изменении источника, src — новый источник.
Изменения источника происходят как программно при вызове setSource(), forward(), backward() или home(), так и при нажатии пользователем на ссылки или эквивалентных комбинациях клавиш.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qtextbrowser.html