文档源和内容
使用 QTextEdit
的内容通过 setHtml()
或 setPlainText()
设置,但 QTextBrowser
也实现了 setSource()
函数,使其可以使用命名文档作为源文本。名称将在搜索路径列表和当前文档工厂的目录中进行查找。
如果一个文档名称以锚点(例如,“#anchor"
)结尾,文本浏览器会自动滚到该位置(使用 scrollToAnchor()
)。当用户点击超链接时,浏览器将调用 setSource()
,并将链接的 href
值作为参数。您可以通过连接到 sourceChanged()
信号来跟踪当前源。
导航
QTextBrowser
提供了一个backward()
和forward()
槽,您可以使用它们来实现后退和前进按钮。 home()
槽将文本设置为首显示的第一个文档。当用户点击锚点时,会发出anchorClicked()
信号。要覆盖浏览器默认的导航行为,请调用setSource()
函数,在一个连接到该信号的槽中提供新的文档文本。
如果您想加载保存在Qt资源系统中的文档,请使用qrc
作为URL中加载的方案。例如,对于文档资源路径:/docs/index.html
,请使用qrc:/docs/index.html
作为URL并通过setSource()
使用。
注意
当使用from __feature__ import true_property
时,可以直接使用属性;否则,通过访问器函数使用。
-
属性 openExternalLinksᅟ: bool
指定是否应该使用QTextBrowser
自动打开外部链接,使用QDesktopServices::openUrl()代替发出anchorClicked
信号。如果链接的方案不是文件或qrc,则认为它为外部链接。
默认值为false。
- 访问函数
-
-
属性 openLinksᅟ: bool
此属性指定是否应该使用QTextBrowser
自动打开用户尝试通过鼠标或键盘激活的链接。
不依赖于此属性的值,始终发出anchorClicked
信号。
默认值为true。
- 访问函数
-
-
属性 searchPathsᅟ: 字符串列表
该属性保存文本浏览器用于查找支持内容的搜索路径。
QTextBrowser
使用此列表来定位图像和文档。
默认情况下,此属性包含一个空字符串列表。
- 访问函数
-
-
属性 sourceᅟ: QUrl
该属性保存显示文档的名称。
如果没有显示文档或源未知,则这是无效的 URL。
设置此属性时,QTextBrowser
会尝试在 searchPaths
属性的路径和当前源的目录中查找具有指定名称的文档,除非值是绝对文件路径。它还会检查可选的锚点并根据文档相应地滚动。它也检查是否是绝对文件路径。
如果文档中的第一个标签是 <qt type=detail>
,则文档将以弹出的窗口而不是在浏览器窗口中作为新文档显示。否则,文档将正常地在文本浏览器中显示,文本设置为使用 QTextDocument::setHtml() 或 QTextDocument::setMarkdown() 设置的命名文档的内容,具体取决于文件名是否以任何已知的 Markdown 文件扩展名结尾。
如果您想避免自动的类型检测并显式指定类型,请调用 setSource()
而不是设置此属性。
默认情况下,此属性包含一个空 URL。
- 访问函数
-
-
属性 sourceTypeᅟ: QTextDocument.ResourceType
该属性保存显示文档的类型。
如果没有显示文档或源的类型未知,则为 QTextDocument::UnknownResource。否则,它保存检测到的类型或当调用 setSource()
时的指定类型。
- 访问函数
-
-
__init__([parent=None])
- 参数:
parent – QWidget
使用指定父对象 parent
构造一个空的 QTextBrowser
。
-
anchorClicked(arg__1)
- 参数:
arg__1 – QUrl
当用户点击锚点时,会发出此信号。锚点指向的 URL 通过 link
传递。
请注意,如果浏览器已将 openLinks
属性设置为 false 或在连接的槽中调用 setSource()
,则浏览器将自动处理到 link
指定位置的导航。这种机制用于覆盖浏览器的默认导航功能。
-
backward()
将显示的文档更改为由链接构建的文档列表中的上一个文档。如果没有上一个文档,则不执行任何操作。
-
backwardAvailable(arg__1)
- 参数:
arg__1 – bool
当 backward()
的可用性发生变化时,会发出此信号。当用户位于 home()
时,available
为 false;否则为 true。
-
backwardHistoryCount()
- 返回类型:
int
返回历史中的后退位置数量。
-
clearHistory()
清除已访问文档的历史记录并禁用前后导航。
-
doSetSource(name[, type=QTextDocument.UnknownResource])
- 参数:
-
企图使用指定的 type
从给定的 url
加载文档。
setSource()
调用调用 doSetSource。在 Qt 5 中,setSource
(const QUrl &url) 是虚拟的。在 Qt 6 中,doSetSource() 是虚拟的,以便可以在子类中重写它。
-
forward()
改变显示的文档为列表中由链接导航构建的下一个文档。如果没有下一个文档,则不执行任何操作。
-
forwardAvailable(arg__1)
- 参数:
arg__1 – bool
当 forward()
的可用性变化时,发出此信号。在用户逆向导航后 available
为真,当用户导航或逆导航至 forward()
时为假。
-
forwardHistoryCount()
- 返回类型:
int
返回历史记录中前进的位置数量。
-
highlighted(arg__1)
- 参数:
arg__1 – QUrl
当用户已选择但未激活文档中的锚点时,发出此信号。锚点引用的 URL 通过 link
传入。
-
historyChanged()
当历史记录变化时,发出此信号。
-
historyTitle(arg__1)
- 参数:
arg__1 – 整数
- 返回类型:
字符串
警告
本节包含自动从 C++ 转换为 Python 的代码片段,可能包含错误。
返回 HistoryItem 的 documentTitle()
backaction.setToolTip(browser.historyTitle(-1))
forwardaction.setToolTip(browser.historyTitle(+1))
-
historyUrl(arg__1)
- 参数:
arg__1 – 整数
- 返回类型:
QUrl
返回 HistoryItem 的 URL。
-
home()
将显示的文档更改为首份历史文档。
-
isBackwardAvailable()
- 返回类型:
bool
如果文本浏览器可以通过 backward()
在文档历史中后退,则返回 true
。
-
isForwardAvailable()
- 返回类型:
bool
如果文本浏览器可以通过 forward()
在文档历史中前进,则返回 true
。
-
openExternalLinks()
- 返回类型:
bool
属性 openExternalLinks
的获取器。
-
openLinks()
- 返回类型:
bool
属性 openLinks
的获取器。
-
reload()
重新加载当前设置的资源。
-
searchPaths()
- 返回类型:
字符串列表
searchPaths属性
的获取器。
-
setOpenExternalLinks(open)
- 参数:
open – 布尔值
openExternalLinks属性
的设置器。
-
setOpenLinks(open)
- 参数:
open – 布尔值
openLinks属性
的设置器。
-
setSearchPaths(paths)
- 参数:
paths – 字符串列表
searchPaths属性
的设置器。
-
setSource(name[, type=QTextDocument.UnknownResource])
- 参数:
-
企图使用指定的 type
从给定的 url
加载文档。
如果 type
是 UnknownResource(默认值),则会自动检测文档类型:即如果url以.md
、.mkd
或.markdown
扩展名结尾,则通过QTextDocument::setMarkdown()加载文档;否则通过QTextDocument::setHtml()加载。可以通过显式指定type
来绕过此检测。
-
source()
- 返回类型:
QUrl
source属性
的获取器。
-
sourceChangedarg__1)
- 参数:
arg__1 – QUrl
当源发生改变时,会发出此信号,其中src
为新的源。
源的变化可能会在调用setSource()
、forward()
、backward()
或home()
时发生,也可能在用户点击链接或按相应的快捷键序列时发生。
-
sourceType()
- 返回类型:
资源配置类型
属性 sourceType
的获取器。