QWebEnginePage 類提供用於查看和編輯 Web 文檔的對象。 更多...
| 頭: | #include <QWebEnginePage> |
| qmake: | QT += webenginewidgets |
| Since: | Qt 5.4 |
| 繼承: | QObject |
該類在 Qt 5.4 引入。
| enum | Feature { Notifications, Geolocation, MediaAudioCapture, MediaVideoCapture, MediaAudioVideoCapture, …, DesktopAudioVideoCapture } |
| enum | FileSelectionMode { FileSelectOpen, FileSelectOpenMultiple } |
| enum | FindFlag { FindBackward, FindCaseSensitively } |
| flags | FindFlags |
| enum | JavaScriptConsoleMessageLevel { InfoMessageLevel, WarningMessageLevel, ErrorMessageLevel } |
| 枚舉類 | LifecycleState { Active, Frozen, Discarded } |
| enum | NavigationType { NavigationTypeLinkClicked, NavigationTypeTyped, NavigationTypeFormSubmitted, NavigationTypeBackForward, NavigationTypeReload, …, NavigationTypeOther } |
| enum | PermissionPolicy { PermissionUnknown, PermissionGrantedByUser, PermissionDeniedByUser } |
| enum | RenderProcessTerminationStatus { NormalTerminationStatus, AbnormalTerminationStatus, CrashedTerminationStatus, KilledTerminationStatus } |
| enum | WebAction { NoWebAction, Back, Forward, Stop, Reload, …, InsertUnorderedList } |
| enum | WebWindowType { WebBrowserWindow, WebBrowserTab, WebDialog, WebBrowserBackgroundTab } |
|
|
| QWebEnginePage (QWebEngineProfile * profile , QObject * parent = Q_NULLPTR) | |
| QWebEnginePage (QObject * parent = Q_NULLPTR) | |
| virtual | ~QWebEnginePage () |
| QAction * | action (QWebEnginePage::WebAction action ) const |
| QColor | backgroundColor () const |
| QSizeF | contentsSize () const |
| const QWebEngineContextMenuData & | contextMenuData () const |
| QMenu * | createStandardContextMenu () |
| QWebEnginePage * | devToolsPage () const |
| void | download (const QUrl & url , const QString & filename = QString()) |
| void | findText (const QString & subString , QWebEnginePage::FindFlags options = FindFlags(), const QWebEngineCallback<bool> & resultCallback = QWebEngineCallback<bool>()) |
| bool | hasSelection () const |
| QWebEngineHistory * | history () const |
| QIcon | icon () const |
| QUrl | iconUrl () const |
| QWebEnginePage * | inspectedPage () const |
| bool | isAudioMuted () const |
| bool | isVisible () const |
| QWebEnginePage::LifecycleState | lifecycleState () const |
| void | load (const QUrl & url ) |
| void | load (const QWebEngineHttpRequest & request ) |
| void | print (QPrinter * printer , const QWebEngineCallback<bool> & resultCallback ) |
| void | printToPdf (const QString & filePath , const QPageLayout & pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF())) |
| void | printToPdf (const QWebEngineCallback<const QByteArray &> & resultCallback , const QPageLayout & pageLayout = QPageLayout(QPageSize(QPageSize::A4), QPageLayout::Portrait, QMarginsF())) |
| QWebEngineProfile * | profile () const |
| bool | recentlyAudible () const |
| QWebEnginePage::LifecycleState | recommendedState () const |
| qint64 | renderProcessPid () const |
| void | replaceMisspelledWord (const QString & replacement ) |
| QUrl | requestedUrl () const |
| void | runJavaScript (const QString & scriptSource ) |
| void | runJavaScript (const QString & scriptSource , quint32 worldId ) |
| void | runJavaScript (const QString & scriptSource , const QWebEngineCallback<const QVariant &> & resultCallback ) |
| void | runJavaScript (const QString & scriptSource , quint32 worldId , const QWebEngineCallback<const QVariant &> & resultCallback ) |
| void | save (const QString & filePath , QWebEngineDownloadItem::SavePageFormat format = QWebEngineDownloadItem::MimeHtmlSaveFormat) const |
| QWebEngineScriptCollection & | scripts () |
| QPointF | scrollPosition () const |
| QString | selectedText () const |
| void | setAudioMuted (bool muted ) |
| void | setBackgroundColor (const QColor & color ) |
| void | setContent (const QByteArray & data , const QString & mimeType = QString(), const QUrl & baseUrl = QUrl()) |
| void | setDevToolsPage (QWebEnginePage * devToolsPage ) |
| void | setFeaturePermission (const QUrl & securityOrigin , QWebEnginePage::Feature feature , QWebEnginePage::PermissionPolicy policy ) |
| void | setHtml (const QString & html , const QUrl & baseUrl = QUrl()) |
| void | setInspectedPage (QWebEnginePage * page ) |
| void | setLifecycleState (QWebEnginePage::LifecycleState state ) |
| void | setUrl (const QUrl & url ) |
| void | setUrlRequestInterceptor (QWebEngineUrlRequestInterceptor * interceptor ) |
| void | setView (QWidget * view ) |
| void | setVisible (bool visible ) |
| void | setWebChannel (QWebChannel * channel , uint worldId ) |
| void | setWebChannel (QWebChannel * channel ) |
| void | setZoomFactor (qreal factor ) |
| QWebEngineSettings * | settings () const |
| QString | title () const |
| void | toHtml (const QWebEngineCallback<const QString &> & resultCallback ) const |
| void | toPlainText (const QWebEngineCallback<const QString &> & resultCallback ) const |
| virtual void | triggerAction (QWebEnginePage::WebAction action , bool checked = false) |
| QUrl | url () const |
| QWidget * | view () const |
| QWebChannel * | webChannel () const |
| qreal | zoomFactor () const |
| virtual bool | event (QEvent * e ) override |
| void | audioMutedChanged (bool muted ) |
| void | authenticationRequired (const QUrl & requestUrl , QAuthenticator * authenticator ) |
| void | contentsSizeChanged (const QSizeF & size ) |
| void | featurePermissionRequestCanceled (const QUrl & securityOrigin , QWebEnginePage::Feature feature ) |
| void | featurePermissionRequested (const QUrl & securityOrigin , QWebEnginePage::Feature feature ) |
| void | findTextFinished (const QWebEngineFindTextResult & result ) |
| void | fullScreenRequested (QWebEngineFullScreenRequest fullScreenRequest ) |
| void | geometryChangeRequested (const QRect & geom ) |
| void | iconChanged (const QIcon & icon ) |
| void | iconUrlChanged (const QUrl & url ) |
| void | lifecycleStateChanged (QWebEnginePage::LifecycleState state ) |
| void | linkHovered (const QString & url ) |
| void | loadFinished (bool ok ) |
| void | loadProgress (int progress ) |
| void | loadStarted () |
| void | pdfPrintingFinished (const QString & filePath , bool success ) |
| void | printRequested () |
| void | proxyAuthenticationRequired (const QUrl & requestUrl , QAuthenticator * authenticator , const QString & proxyHost ) |
| void | quotaRequested (QWebEngineQuotaRequest quotaRequest ) |
| void | recentlyAudibleChanged (bool recentlyAudible ) |
| void | recommendedStateChanged (QWebEnginePage::LifecycleState state ) |
| void | registerProtocolHandlerRequested (QWebEngineRegisterProtocolHandlerRequest request ) |
| void | renderProcessPidChanged (qint64 pid ) |
| void | renderProcessTerminated (QWebEnginePage::RenderProcessTerminationStatus terminationStatus , int exitCode ) |
| void | scrollPositionChanged (const QPointF & position ) |
| void | selectClientCertificate (QWebEngineClientCertificateSelection clientCertificateSelection ) |
| void | selectionChanged () |
| void | titleChanged (const QString & title ) |
| void | urlChanged (const QUrl & url ) |
| void | visibleChanged (bool visible ) |
| void | windowCloseRequested () |
| virtual bool | acceptNavigationRequest (const QUrl & url , QWebEnginePage::NavigationType type , bool isMainFrame ) |
| virtual bool | certificateError (const QWebEngineCertificateError & certificateError ) |
| virtual QStringList | chooseFiles (QWebEnginePage::FileSelectionMode mode , const QStringList & oldFiles , const QStringList & acceptedMimeTypes ) |
| virtual QWebEnginePage * | createWindow (QWebEnginePage::WebWindowType type ) |
| virtual void | javaScriptAlert (const QUrl & securityOrigin , const QString & msg ) |
| virtual bool | javaScriptConfirm (const QUrl & securityOrigin , const QString & msg ) |
| virtual void | javaScriptConsoleMessage (QWebEnginePage::JavaScriptConsoleMessageLevel level , const QString & message , int lineNumber , const QString & sourceID ) |
| virtual bool | javaScriptPrompt (const QUrl & securityOrigin , const QString & msg , const QString & defaultValue , QString * result ) |
A Web 引擎頁麵 保持 HTML 文檔的內容、導航鏈接的曆史及動作。
QWebEnginePage 的 API 非常類似 QWebEngineView ,仍提供常用功能像 action () (稱為 pageAction () 在 QWebEngineView ), triggerAction (),和 findText ().
頁麵可以被加載使用 load () 或 setUrl ()。另外,若擁有隨時可用的 HTML 內容,可以使用 setHtml ()。GET 方法始終被用於加載 URL。
QWebEnginePage 類還提供方法去檢索目前由頁麵加載的 URL (見 url ()) 及要被加載的最初請求 URL (見 requestedUrl ))。這些方法使在加載進程期間齣現 DNS 解答 (或重定嚮) 前後,檢索 URL 成為可能。 requestedUrl () 還匹配被添加到頁麵曆史的 URL ( QWebEngineHistory ) 若加載成功。
HTML 頁麵標題可以被訪問采用 title () 特性。此外,頁麵還可以指定圖標,其可以被訪問使用 icon () 或其 URL 使用 iconUrl () 特性。若標題或圖標改變,相應 titleChanged (), iconChanged () 和 iconUrlChanged () 信號會被發射。 zoomFactor () 特性使能夠按比例因子縮放網頁內容。
The
loadStarted
() 信號被發射,當頁麵開始加載時,而
loadProgress
() 信號被發射,每當網頁元素 (如嵌入圖像或腳本) 完成加載時。
loadFinished
() 信號被發射,當頁麵內容已加載完成時 (獨立於腳本執行或頁麵渲染)。其自變量,是
true
or
false
,指示加載操作是否成功。
HTML 文檔被加載於
main frame
在網頁中。若它引用
child frames
(作為定義通過
<frame>
or
<iframe>
元素),它們被認為是內容的一部分。子級框架隻可透過 JavaScript 單獨訪問。
網站定義
security origin
為客戶端側腳本 (或數據庫) 安全訪問彼此資源。來源由主機名、方案及端口號組成。例如站點
http://www.example.com/my/page.html
and
http://www.example.com/my/overview.html
允許共享同一數據庫或訪問彼此的文檔,當用於 HTML 框架集和 JavaScript 時。同時,
http://www.malicious.com/evil.html
被阻止訪問其下資源為
http://www.example.com/
,因為它們是不同安全來源。默認情況下,本地方案像
file://
and
qrc://
被認為是在同一安全來源中,且可以訪問彼此資源。默認情況下,限定本地資源訪問遠程內容,這意味著
file://
將不能訪問
http://domain.com/foo.html
.
腳本可以被執行在網頁通過使用
runJavaScript
(),在主 JavaScript
world
,來自 web 內容的其它 JavaScript,或在它們自己的獨立世界。雖然頁麵的 DOM 可以被訪問從任何世界,但在某一世界中定義的 JavaScript 函數變量是不能從另一世界訪問的。
QWebEngineScript::ScriptWorldId
為此目的提供瞭一些預定義 ID。使用
runJavaScript()
在世界 ID 外版本如同運行腳本在
MainWorld
.
The FocusOnNavigationEnabled 設置可以被用於使查看關聯頁麵自動接收聚焦,當發生導航操作時 (像加載或重新加載頁麵或透過曆史進行導航)。
此枚舉描述用戶可能被要求授予 (或拒絕) 訪問的平颱特徵訪問類彆:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::Notifications
|
0
|
最終用戶的 Web 通知。 |
QWebEnginePage::Geolocation
|
1
|
定位硬件或服務。 |
QWebEnginePage::MediaAudioCapture
|
2
|
音頻捕獲設備 (譬如:麥剋風)。 |
QWebEnginePage::MediaVideoCapture
|
3
|
視頻設備 (譬如:攝像頭)。 |
QWebEnginePage::MediaAudioVideoCapture
|
4
|
音頻和視頻捕獲設備。 |
QWebEnginePage::MouseLock
|
5
|
鼠標鎖定,將鼠標指針鎖定到 Web 視圖 (通常用於遊戲)。 |
QWebEnginePage::DesktopVideoCapture
|
6
|
視頻輸齣捕獲 (也就是說,用戶顯示的捕獲),例如:屏幕共享目的 (在 Qt 5.10 添加)。 |
QWebEnginePage::DesktopAudioVideoCapture
|
7
|
音頻和視頻兩者輸齣捕獲 (在 Qt 5.10 添加)。 |
另請參閱 featurePermissionRequested (), featurePermissionRequestCanceled (), setFeaturePermission (),和 PermissionPolicy .
此枚舉指示實現的 chooseFiles () 函數應該僅返迴一個文件或可以返迴多個文件:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::FileSelectOpen
|
0
|
隻返迴一個文件名。 |
QWebEnginePage::FileSelectOpenMultiple
|
1
|
返迴多個文件名。 |
另請參閱 chooseFiles ().
此枚舉描述的選項可用於 findText () 函數。來自以下列錶中的選項可以 OR 在一起:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::FindBackward
|
1
|
嚮後搜索,而不是嚮前。 |
QWebEnginePage::FindCaseSensitively
|
2
|
默認情況下 findText () 工作不區分大小寫。指定此選項把行為改為區分大小寫的查找操作。 |
FindFlags 類型是 typedef 對於 QFlags <FindFlag>。它存儲 FindFlag 值的 OR (或) 組閤。
此枚舉描述瞭 JavaScript 控製颱消息,可以擁有的不同嚴重級彆:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::InfoMessageLevel
|
0
|
消息為純情報且可以被安全忽略。 |
QWebEnginePage::WarningMessageLevel
|
1
|
消息告知可能需要關注的意外行為 (或錯誤)。 |
QWebEnginePage::ErrorMessageLevel
|
2
|
消息指示齣現錯誤。 |
此枚舉描述頁麵生命周期狀態:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::LifecycleState::Active
|
0
|
正常狀態。 |
QWebEnginePage::LifecycleState::Frozen
|
1
|
低 CPU 使用率狀態,掛起大多數 HTML 任務源。 |
QWebEnginePage::LifecycleState::Discarded
|
2
|
很低資源使用率狀態 (整個瀏覽上下文被丟棄)。 |
該枚舉在 Qt 5.14 引入或被修改。
另請參閱 lifecycleState , 頁麵生命周期 API ,和 WebEngine 生命周期範例 .
此枚舉描述導航請求類型:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::NavigationTypeLinkClicked
|
0
|
導航請求由點擊鏈接産生。 |
QWebEnginePage::NavigationTypeTyped
|
1
|
導航請求由明確加載 URL 産生。 |
QWebEnginePage::NavigationTypeFormSubmitted
|
2
|
導航請求由錶單提交産生。 |
QWebEnginePage::NavigationTypeBackForward
|
3
|
導航請求由後退 (或前進) 動作産生。 |
QWebEnginePage::NavigationTypeReload
|
4
|
導航請求由重新加載動作産生。 |
QWebEnginePage::NavigationTypeRedirect
|
6
|
導航請求由內容 (或服務器控製重定嚮) 産生。這還包括自動重新加載 (在 Qt 5.14 添加)。 |
QWebEnginePage::NavigationTypeOther
|
5
|
導航請求由上述未涵蓋的其它手段觸發。 |
另請參閱 acceptNavigationRequest ().
此枚舉描述用戶可以為數據或設備訪問設置的權限策略:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::PermissionUnknown
|
0
|
用戶是否授予 (或拒絕) 權限未知。 |
QWebEnginePage::PermissionGrantedByUser
|
1
|
用戶已授予權限。 |
QWebEnginePage::PermissionDeniedByUser
|
2
|
用戶已拒絕權限。 |
另請參閱 featurePermissionRequested (), featurePermissionRequestCanceled (), setFeaturePermission (),和 Feature .
此枚舉描述渲染進程終止狀態:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::NormalTerminationStatus
|
0
|
渲染進程正常終止。 |
QWebEnginePage::AbnormalTerminationStatus
|
1
|
渲染進程以非零退齣狀態終止。 |
QWebEnginePage::CrashedTerminationStatus
|
2
|
渲染進程崩潰 (例如:由於分段故障)。 |
QWebEnginePage::KilledTerminationStatus
|
3
|
渲染進程被殺除,例如被
SIGKILL
或被任務管理器殺除。
|
該枚舉在 Qt 5.6 引入或被修改。
此枚舉描述可以在網頁上履行的動作類型。
動作纔有效,當適用時。
可以確定動作的可用性,通過校驗 isEnabled() 在返迴動作通過 action ().
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::NoWebAction
|
- 1
|
沒有動作被觸發。 |
QWebEnginePage::Back
|
0
|
在導航鏈接曆史中後退導航。 |
QWebEnginePage::Forward
|
1
|
在導航鏈接曆史中前進導航。 |
QWebEnginePage::Stop
|
2
|
停止加載當前頁麵。 |
QWebEnginePage::Reload
|
3
|
重新加載當前頁麵。 |
QWebEnginePage::ReloadAndBypassCache
|
10
|
重新加載當前頁麵,但不使用任何本地緩存。 |
QWebEnginePage::Cut
|
4
|
把目前選中內容剪切到剪貼闆。 |
QWebEnginePage::Copy
|
5
|
把目前選中內容拷貝到剪貼闆。 |
QWebEnginePage::Paste
|
6
|
從剪貼闆粘貼內容。 |
QWebEnginePage::Undo
|
7
|
撤消上一編輯動作。 |
QWebEnginePage::Redo
|
8
|
重做上一編輯動作。 |
QWebEnginePage::SelectAll
|
9
|
選擇所有內容。纔啓用此動作,當聚焦頁麵內容時。可以強製聚焦通過 JavaScript
window.focus()
調用,或
FocusOnNavigationEnabled
設置應該被啓用以獲得自動聚焦。
|
QWebEnginePage::PasteAndMatchStyle
|
11
|
采用當前樣式從剪貼闆粘貼內容。 |
QWebEnginePage::OpenLinkInThisWindow
|
12
|
在當前窗口打開當前鏈接 (在 Qt 5.6 添加)。 |
QWebEnginePage::OpenLinkInNewWindow
|
13
|
在新窗口中打開當前鏈接。要求實現 createWindow () (在 Qt 5.6 添加)。 |
QWebEnginePage::OpenLinkInNewTab
|
14
|
在新選項卡中打開當前鏈接。要求實現 createWindow () (在 Qt 5.6 添加)。 |
QWebEnginePage::OpenLinkInNewBackgroundTab
|
31
|
在新背景選項卡中打開當前鏈接。要求實現 createWindow () (在 Qt 5.7 添加)。 |
QWebEnginePage::CopyLinkToClipboard
|
15
|
把當前鏈接拷貝到剪貼闆 (在 Qt 5.6 添加)。 |
QWebEnginePage::CopyImageToClipboard
|
17
|
把點擊圖像拷貝到剪貼闆 (在 Qt 5.6 添加)。 |
QWebEnginePage::CopyImageUrlToClipboard
|
18
|
把點擊圖像的 URL 拷貝到剪貼闆 (在 Qt 5.6 添加)。 |
QWebEnginePage::CopyMediaUrlToClipboard
|
20
|
把懸停音頻 (或視頻) 的 URL 拷貝到剪貼闆 (在 Qt 5.6 添加)。 |
QWebEnginePage::ToggleMediaControls
|
21
|
在展示和隱藏懸停音頻 (或視頻) 元素控件之間觸發 (在 Qt 5.6 添加)。 |
QWebEnginePage::ToggleMediaLoop
|
22
|
觸發懸停音頻 (或視頻)是否應在完成時循環 (在 Qt 5.6 添加)。 |
QWebEnginePage::ToggleMediaPlayPause
|
23
|
觸發懸停音頻 (或視頻) 元素的播放/暫停狀態 (在 Qt 5.6 添加)。 |
QWebEnginePage::ToggleMediaMute
|
24
|
靜音 (或取消靜音) 懸停音頻 (或視頻) 元素 (在 Qt 5.6 添加)。 |
QWebEnginePage::DownloadLinkToDisk
|
16
|
把當前鏈接下載到磁盤。要求槽為 downloadRequested() (在 Qt 5.6 添加)。 |
QWebEnginePage::DownloadImageToDisk
|
19
|
把被突顯圖像下載到磁盤。要求槽為 downloadRequested() (在 Qt 5.6 添加)。 |
QWebEnginePage::DownloadMediaToDisk
|
25
|
將懸停音頻或視頻下載到磁盤。要求槽用於 downloadRequested() (在 Qt 5.6 添加)。 |
QWebEnginePage::InspectElement
|
26
|
觸發任何附加 Web 審查程序以審查高亮元素 (在 Qt 5.6 添加)。 |
QWebEnginePage::ExitFullScreen
|
27
|
退齣全屏模式 (在 Qt 5.6 添加)。 |
QWebEnginePage::RequestClose
|
28
|
請求關閉網頁。若有定義,
window.onbeforeunload
處理程序運行,且用戶可以確認或拒絕關閉頁麵。若有確認關閉請求,
windowCloseRequested
被發射 (在 Qt 5.6 添加)。
|
QWebEnginePage::Unselect
|
29
|
清零當前選定 (在 Qt 5.7 添加)。 |
QWebEnginePage::SavePage
|
30
|
把當前頁麵保存到磁盤。MHTML 是用於把網頁存儲在磁盤的默認格式。要求槽為 downloadRequested() (在 Qt 5.7 添加)。 |
QWebEnginePage::ViewSource
|
32
|
在新選項卡中展示當前頁麵的源代碼。要求實現 createWindow () (在 Qt 5.8 添加)。 |
QWebEnginePage::ToggleBold
|
33
|
觸發選定或光標位置處的粗體。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::ToggleItalic
|
34
|
觸發選定或光標位置處的斜體。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::ToggleUnderline
|
35
|
觸發選定或光標位置處的下劃綫。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::ToggleStrikethrough
|
36
|
觸發選定或光標位置處的刪除綫。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::AlignLeft
|
37
|
左對齊行所包含的選定或光標。需要
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::AlignCenter
|
38
|
居中對齊行所包含的選定或光標。需要
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::AlignRight
|
39
|
右對齊行所包含的選定或光標。需要
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::AlignJustified
|
40
|
拉伸包含選定或光標的行,以使每行擁有相等寬度。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::Indent
|
41
|
縮進包含選定或光標的行。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::Outdent
|
42
|
伸齣包含選定或光標的行。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::InsertOrderedList
|
43
|
將有序列錶插入在當前光標位置處,刪除當前選定。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
QWebEnginePage::InsertUnorderedList
|
44
|
將無序列錶插入在當前光標位置處,刪除當前選定。要求
contenteditable="true"
(在 Qt 5.10 添加)。
|
此枚舉描述可以創建的窗口類型通過 createWindow () 函數:
| 常量 | 值 | 描述 |
|---|---|---|
QWebEnginePage::WebBrowserWindow
|
0
|
完整 Web 瀏覽器窗口。 |
QWebEnginePage::WebBrowserTab
|
1
|
Web 瀏覽器選項卡。 |
QWebEnginePage::WebDialog
|
2
|
沒有裝飾的窗口。 |
QWebEnginePage::WebBrowserBackgroundTab
|
3
|
Web 瀏覽器選項卡不隱藏當前可見 WebEngineView (在 Qt 5.7 添加)。 |
此特性保持當前頁麵音頻是否被靜音。
默認值為
false
.
該特性在 Qt 5.7 引入。
訪問函數:
| bool | isAudioMuted () const |
| void | setAudioMuted (bool muted ) |
通知程序信號:
| void | audioMutedChanged (bool muted ) |
另請參閱 recentlyAudible .
此特性保持文檔本體背後的頁麵背景色。
可以把背景色設為 Qt::transparent 或半透明顔色以透視文檔,或將其設為匹配混閤應用程序 Web 內容以防在加載期間可能齣現的白色閃爍。
默認值為白色。
該特性在 Qt 5.6 引入。
訪問函數:
| QColor | backgroundColor () const |
| void | setBackgroundColor (const QColor & color ) |
此特性保持頁麵內容的尺寸。
該特性在 Qt 5.7 引入。
訪問函數:
| QSizeF | contentsSize () const |
通知程序信號:
| void | contentsSizeChanged (const QSizeF & size ) |
此特性保持此頁麵是否包含選定內容。
訪問函數:
| bool | hasSelection () const |
另請參閱 selectionChanged ().
此特性保持關聯目前查看頁麵的圖標。
默認情況下,此屬性包含 null 圖標。若網頁指定一個以上圖標,
icon
特性將可用候選圖標封裝於單個、可伸縮
QIcon
.
該特性在 Qt 5.7 引入。
訪問函數:
| QIcon | icon () const |
通知程序信號:
| void | iconChanged (const QIcon & icon ) |
另請參閱 iconChanged (), iconUrl (),和 iconUrlChanged ().
此特性保持關聯目前查看頁麵的圖標 URL。
默認情況下,此特性包含空 URL。
訪問函數:
| QUrl | iconUrl () const |
通知程序信號:
| void | iconUrlChanged (const QUrl & url ) |
另請參閱 iconUrlChanged (), icon (),和 iconChanged ().
此特性保持頁麵的當前生命周期狀態。
以下限定由 setter 實施:
Active
狀態。
Active
狀態。
Discarded
狀態,纔能過渡到
Active
狀態。這會導緻頁麵的重新加載。
這些是對生命周期狀態的唯一硬性限製,另請參閱 recommendedState 瞭解推薦的軟限製。
該特性在 Qt 5.14 引入。
訪問函數:
| QWebEnginePage::LifecycleState | lifecycleState () const |
| void | setLifecycleState (QWebEnginePage::LifecycleState state ) |
通知程序信號:
| void | lifecycleStateChanged (QWebEnginePage::LifecycleState state ) |
另請參閱 recommendedState , 頁麵生命周期 API ,和 WebEngine 生命周期範例 .
此特性保持當前頁麵的 audible state ,也就是,最近是否有播放音頻。
默認值為
false
.
該特性在 Qt 5.7 引入。
訪問函數:
| bool | recentlyAudible () const |
通知程序信號:
| void | recentlyAudibleChanged (bool recentlyAudible ) |
另請參閱 audioMuted .
此特性保持頁麵生命周期狀態的推薦限製。
把生命周期狀態設為低於推薦狀態的資源使用率狀態可能導緻副作用 (譬如:停止後颱音頻迴放或丟失 HTML 錶單輸入)。不管怎樣,把生命周期狀態設為更高資源狀態是完全安全的。
該特性在 Qt 5.14 引入。
訪問函數:
| QWebEnginePage::LifecycleState | recommendedState () const |
通知程序信號:
| void | recommendedStateChanged (QWebEnginePage::LifecycleState state ) |
另請參閱 lifecycleState , 頁麵生命周期 API ,和 WebEngine 生命周期範例 .
此特性保持賦值給當前頁麵主框架的渲染進程的 PID (進程 ID)。
若尚無可用渲染進程,
0
被返迴。
該特性在 Qt 5.15 引入。
訪問函數:
| qint64 | renderProcessPid () const |
通知程序信號:
| void | renderProcessPidChanged (qint64 pid ) |
此特性保持當前查看頁麵最初請求加載的 URL。
注意: URL 可能異於返迴的經由 url (),它是來自 DNS 解析或重定嚮結果的實際 URL。
訪問函數:
| QUrl | requestedUrl () const |
此特性保持頁麵內容的捲動位置。
該特性在 Qt 5.7 引入。
訪問函數:
| QPointF | scrollPosition () const |
通知程序信號:
| void | scrollPositionChanged (const QPointF & position ) |
此特性保持當前選中的文本。
默認情況下,此特性包含空字符串。
訪問函數:
| QString | selectedText () const |
另請參閱 selectionChanged ().
此特性保持頁麵的標題,作為定義通過 HTML
<title>
元素。
若頁麵沒有
<title>
元素,則使用 URL 代替。對於
file://
URL,僅使用文件名,而非完整路徑。
默認情況下,在任何內容被加載之前,此特性包含空字符串。
訪問函數:
| QString | title () const |
另請參閱 titleChanged ().
此特性保持目前查看頁麵的 URL。
設置此特性清零視圖並加載 URL。
默認情況下,此特性包含空的無效 URL。
訪問函數:
| QUrl | url () const |
| void | setUrl (const QUrl & url ) |
另請參閱 urlChanged ().
此特性保持頁麵是否在頁麵可見性 API 中被認為可見。
設置此特性將改變
Document.hidden
和
Document.visibilityState
特性在 JavaScript,可以用於網站以自願縮減資源使用率若它們對用戶不可見。
若頁麵被連接到 view 那麼,此特性將由視圖根據自身的可見性自動管理。
該特性在 Qt 5.14 引入。
訪問函數:
| bool | isVisible () const |
| void | setVisible (bool visible ) |
通知程序信號:
| void | visibleChanged (bool visible ) |
另請參閱 lifecycleState .
此特性保持頁麵內容的縮放因子。
有效值範圍從
0.25
to
5.0
。默認因子為
1.0
.
訪問函數:
| qreal | zoomFactor () const |
| void | setZoomFactor (qreal factor ) |
運行包含的 JavaScript 代碼在 scriptSource 無需校驗是否已構建頁麵 DOM。若需要如何更多控製腳本運行,考慮使用 scripts () 代替。
為避免與頁麵中執行的其它腳本衝突,運行腳本的世界的指定通過
worldId
。世界 ID 值是相同的提供通過
QWebEngineScript::ScriptWorldId
,和介於
0
and
256
。若忽略
world
ID,腳本運行在
MainWorld
.
當執行腳本時,
resultCallback
被調用帶最後執行語句的結果。
resultCallback
可以是函數指針、函子或 Lambda,且期望接受
QVariant
參數。例如:
page.runJavaScript("document.title", [](const QVariant &v) { qDebug() << v.toString(); });
僅純數據可以被返迴從 JavaScript 作為結果值。支持的數據類型包括所有 JSON 數據類型,例如,
Date
and
ArrayBuffer
。不支持的數據類型包括,例如,
函數
and
Promise
.
警告: 不要在迴調函數中執行長例程,因為可能阻塞 Web 引擎頁麵的渲染。
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
該函數在 Qt 5.7 引入。
另請參閱 scripts (), QWebEngineScript::ScriptWorldId ,和 腳本注入 .
構造空 Web 引擎頁麵按 Web 引擎 Profile (配置文件) profile 采用父級 parent .
若 Profile (配置文件) 不是默認 Profile,調用者必須確保該 Profile 保持存活隻要頁麵存在。
該函數在 Qt 5.5 引入。
構造空的 QWebEnginePage 采用父級 parent .
[signal]
void
QWebEnginePage::
audioMutedChanged
(
bool
muted
)
此信號被發射當頁麵的 muted 狀態改變。
注意: 不要混淆特定 HTML5 音頻或視頻元素的靜音。
注意: 通知程序信號對於特性 audioMuted .
該函數在 Qt 5.7 引入。
[signal]
void
QWebEnginePage::
authenticationRequired
(const
QUrl
&
requestUrl
,
QAuthenticator
*
authenticator
)
此信號被發射當訪問 requestUrl 要求身份驗證。 authenticator 應該被用於傳遞連接的用戶名和口令。
[signal]
void
QWebEnginePage::
featurePermissionRequestCanceled
(const
QUrl
&
securityOrigin
,
QWebEnginePage::Feature
feature
)
此信號發射,當網站標識通過 securityOrigin 取消先前發齣的請求為使用 feature .
另請參閱 featurePermissionRequested () 和 setFeaturePermission ().
[signal]
void
QWebEnginePage::
featurePermissionRequested
(const
QUrl
&
securityOrigin
,
QWebEnginePage::Feature
feature
)
此信號發射,當網站標識通過 securityOrigin 請求使用資源 (或設備) 的標識通過 feature .
另請參閱 featurePermissionRequestCanceled () 和 setFeaturePermission ().
[signal]
void
QWebEnginePage::
findTextFinished
(const
QWebEngineFindTextResult
&
result
)
此信號被發射當搜索字符串搜索頁麵完成時。 result 是字符串搜索的結果。
該函數在 Qt 5.14 引入。
另請參閱 findText ().
[signal]
void
QWebEnginePage::
fullScreenRequested
(
QWebEngineFullScreenRequest
fullScreenRequest
)
此信號被發射當網頁發齣進入 Web 元素 (通常為視頻元素) 全屏模式的請求時。
請求對象 fullScreenRequest 可用於接受或拒絕請求。
若接受請求,全屏請求元素將填充視口,但直到應用程序使視圖全屏 (或將頁麵移至全屏視圖)。
另請參閱 QWebEngineSettings::FullScreenSupportEnabled .
[signal]
void
QWebEnginePage::
geometryChangeRequested
(const
QRect
&
geom
)
此信號被發射每當文檔希望把頁麵位置和大小更改為 geom 。這會發生,例如透過 JavaScript。
注意: setGeometry() 期望尺寸排除窗口裝飾,而 geom 包括。必須移除框架邊距尺寸從 geom 以正確處理此信號。
window->setGeometry(geom.marginsRemoved(window->frameMargins()));
[signal]
void
QWebEnginePage::
iconChanged
(const
QIcon
&
icon
)
此信號被發射當頁麵關聯的 Favicon 圖標被改變時。新圖標被指定由 icon .
注意: 通知程序信號對於特性 icon .
該函數在 Qt 5.7 引入。
另請參閱 icon (), iconUrl (),和 iconUrlChanged ().
[signal]
void
QWebEnginePage::
iconUrlChanged
(const
QUrl
&
url
)
此信號被發射當頁麵關聯的 Favicon 圖標 URL 被改變時。新圖標 URL 被指定由 url .
注意: 通知程序信號對於特性 iconUrl .
另請參閱 iconUrl (), icon (),和 iconChanged ().
[signal]
void
QWebEnginePage::
linkHovered
(const
QString
&
url
)
此信號被發射當鼠標懸停鏈接上時。 url 包含鏈接的目標 URL。
[signal]
void
QWebEnginePage::
loadFinished
(
bool
ok
)
此信號被發射當頁麵內容加載完成時。此信號獨立於腳本執行 (或頁麵渲染)。 ok 將指示加載是否成功 (或發生任何錯誤)。
注意:
導航請求可以委托給 Qt 應用程序,而不是讓 HTML 處理程序引擎處理它們,通過重載
acceptNavigationRequest
() 函數。因為加載過程已開始,且
loadStarted
() 信號發射
before
請求被接受 (或拒絕),
loadFinished()
信號返迴
false
是可預期的即使在委派請求後。
另請參閱 loadStarted () 和 acceptNavigationRequest ().
[signal]
void
QWebEnginePage::
loadProgress
(
int
progress
)
此信號被發射當全局進度狀態改變時。當前值被提供由 progress 並縮放到 0 - 100,其是默認範圍為 QProgressBar 。它纍計所有子級幀的變化。
[signal]
void
QWebEnginePage::
loadStarted
()
此信號被發射當頁麵開始加載內容。
另請參閱 loadFinished () 和 acceptNavigationRequest ().
[signal]
void
QWebEnginePage::
pdfPrintingFinished
(const
QString
&
filePath
,
bool
success
)
此信號被發射,當把網頁打印成 PDF 文件完成時。
filePath
將包含請求創建的文件路徑,且
success
將是
true
若成功創建文件且
false
否則。
該函數在 Qt 5.9 引入。
另請參閱 printToPdf ().
[signal]
void
QWebEnginePage::
printRequested
()
此信號被發射當 JavaScript
window.print()
方法被調用。通常,信號處理程序隻需調用
printToPdf
().
該函數在 Qt 5.12 引入。
另請參閱 printToPdf ().
[signal]
void
QWebEnginePage::
proxyAuthenticationRequired
(const
QUrl
&
requestUrl
,
QAuthenticator
*
authenticator
, const
QString
&
proxyHost
)
此信號被發射當訪問 requestUrl 憑藉 proxyHost 要求對代理進行身份驗證。 authenticator 應該被用於傳遞連接的用戶名和口令。
[signal]
void
QWebEnginePage::
quotaRequested
(
QWebEngineQuotaRequest
quotaRequest
)
此信號被發射當網頁請求的持久性存儲大於應用程序在文件係統 API 中的當前分配時。默認配額為 0 字節。
請求對象 quotaRequest 可用於接受或拒絕請求。
該函數在 Qt 5.11 引入。
[signal]
void
QWebEnginePage::
recentlyAudibleChanged
(
bool
recentlyAudible
)
此信號會被發射,當頁麵的可聽見狀態, recentlyAudible 改變,因為音頻播放或停止。
注意: 信號也會被發射當調用 setAudioMuted () 方法。
注意: 通知程序信號對於特性 recentlyAudible .
該函數在 Qt 5.7 引入。
[signal]
void
QWebEnginePage::
registerProtocolHandlerRequested
(
QWebEngineRegisterProtocolHandlerRequest
request
)
此信號被發射當網頁嘗試注冊自定義協議,使用 registerProtocolHandler API.
請求對象 request 可用於接受或拒絕請求:
void WebPage::handleRegisterProtocolHandlerRequested(QWebEngineRegisterProtocolHandlerRequest request) { auto answer = QMessageBox::question( view()->window(), tr("Permission Request"), tr("Allow %1 to open all %2 links?") .arg(request.origin().host()) .arg(request.scheme())); if (answer == QMessageBox::Yes) request.accept(); else request.reject(); }
該函數在 Qt 5.11 引入。
[signal]
void
QWebEnginePage::
renderProcessPidChanged
(
qint64
pid
)
此信號被發射當底層渲染進程 PID, renderProcessPid ,改變。
注意: 通知程序信號對於特性 renderProcessPid .
該函數在 Qt 5.15 引入。
[signal]
void
QWebEnginePage::
renderProcessTerminated
(
QWebEnginePage::RenderProcessTerminationStatus
terminationStatus
,
int
exitCode
)
此信號被發射當渲染進程采用非零退齣狀態被終止時。 terminationStatus 是進程的終止狀態,且 exitCode 是進程終止的狀態碼。
該函數在 Qt 5.6 引入。
[signal]
void
QWebEnginePage::
selectClientCertificate
(
QWebEngineClientCertificateSelection
clientCertificateSelection
)
此信號被發射當網站請求 SSL 客戶端證書,且在係統客戶端證書存儲中發現一個或多個。
處理信號是異步的,且加載會等待直到證書被選中,或上一拷貝 clientCertificateSelection 被銷毀。
若信號未被處理, clientCertificateSelection 被自動銷毀,且將在沒有客戶端證書的情況下繼續加載。
該函數在 Qt 5.12 引入。
另請參閱 QWebEngineClientCertificateSelection .
[signal]
void
QWebEnginePage::
selectionChanged
()
此信號被發射每當以交互或編程方式改變選定時。例如,通過調用 triggerAction () 采用選定動作。
注意: 當使用鼠標通過左鍵點擊並拖拽以選擇文本時,會為每個新選中字符發射信號,而不是在釋放鼠標左鍵時。
另請參閱 selectedText ().
[signal]
void
QWebEnginePage::
titleChanged
(const
QString
&
title
)
此信號發射,每當頁麵標題改變時。 title 字符串指定新標題。
另請參閱 title ().
[signal]
void
QWebEnginePage::
urlChanged
(const
QUrl
&
url
)
此信號被發射帶頁麵 URL,當接收到頁麵標題時。新 URL 被指定由 url .
另請參閱 url ().
[signal]
void
QWebEnginePage::
windowCloseRequested
()
此信號被發射每當頁麵請求關閉 Web 瀏覽器窗口時,例如透過 JavaScript
window.close()
調用。
另請參閱 RequestClose .
[虛擬]
QWebEnginePage::
~QWebEnginePage
()
銷毀 Web 頁麵。
[virtual protected]
bool
QWebEnginePage::
acceptNavigationRequest
(const
QUrl
&
url
,
QWebEnginePage::NavigationType
type
,
bool
isMainFrame
)
此函數被調用當接收請求以導航到指定
url
通過指定導航類型
type
.
isMainFrame
指示請求是對應主框架,還是子級框架。若函數返迴
true
,導航請求被接受且
url
被加載。默認實現接受所有導航請求。
可以將導航請求委托給 Qt 應用程序,而不是讓 HTML 處理程序引擎通過重載此函數處理它們。這是必要的,當把 HTML 文檔用作用戶界麵的一部分,且不顯示外部數據時 (例如:當顯示結果列錶時)。
注意: 不會調用此函數,對於同一頁麵中的片段導航。例如,這種導航是通過點擊頁麵中的 #fragment 鏈接發生的。不會觸發加載不同文檔,即使它改變頁麵的URL 並添加曆史條目。它僅充當頁麵內捲動的快捷方式。因此,不期望發生這種導航類型的委托。
注意:
加載進程開始且
loadStarted
() 信號發射
before
請求被接受 (或拒絕)。因此,
loadFinished
() 信號返迴
false
是可預期的即使在委派請求後。
注意: 當使用 setHtml or setContent 采用相對鏈接,請確保有指定基 URL,否則將認為鏈接無效,且不會發齣導航請求。
The QWebEngineUrlRequestInterceptor 類提供用於攔截和操縱請求的進一步選項。
該函數在 Qt 5.5 引入。
返迴 QAction 為指定 WebAction action .
動作歸 QWebEnginePage 但可以通過改變其特性定製外觀。
QWebEnginePage 還負責實現動作,以便觸發時在頁麵履行相應動作。
另請參閱 triggerAction ().
[virtual protected]
bool
QWebEnginePage::
certificateError
(const
QWebEngineCertificateError
&
certificateError
)
此函數被調用,當加載給定請求時引發無效證書錯誤。
The certificateError 參數包含證書和錯誤細節的有關信息。
返迴
true
忽略錯誤並完成請求。返迴
false
停止加載請求。
注意: 若錯誤被成功延期,返迴值會被忽略。
另請參閱 QWebEngineCertificateError .
[virtual protected]
QStringList
QWebEnginePage::
chooseFiles
(
QWebEnginePage::FileSelectionMode
mode
, const
QStringList
&
oldFiles
, const
QStringList
&
acceptedMimeTypes
)
This function is called when the web content requests a file name, for example as a result of the user clicking on a file upload button in an HTML form.
mode indicates whether only one file or multiple files are expected to be returned.
A suggested filename may be provided as the first entry of oldFiles . acceptedMimeTypes is ignored by the default implementation, but might be used by overrides.
返迴當前上下文菜單的有關額外數據。它僅保證是有效的在調用 QWebEngineView::contextMenuEvent () 處理程序的關聯 QWebEngineView .
該函數在 Qt 5.7 引入。
另請參閱 createStandardContextMenu ().
創建標準上下文菜單,當用戶采用鼠標右鍵點擊網頁時展示。它被調用從默認 contextMenuEvent() 處理程序。將彈齣菜單的所有權轉移給調用者。
返迴
nullptr
若上下文菜單數據未被初始化,例如:在實際不請求上下文菜單時調用它。
[virtual protected]
QWebEnginePage
*QWebEnginePage::
createWindow
(
QWebEnginePage::WebWindowType
type
)
此函數被調用以創建新窗口,采用指定 type 。例如,當 JavaScript 程序請求在新窗口中打開文檔時。
若新窗口可以被創建,新窗口的 QWebEnginePage 被返迴;否則 null 指針被返迴。
若網頁關聯視圖為 QWebEngineView 對象,則默認實現把請求轉發給 QWebEngineView::createWindow ();否則,返迴 null 指針。
注意:
在通過 JavaScript 觸發創建窗口的情況中,除重實現此方法外,應用程序還必須設置
QWebEngineSettings::JavascriptCanOpenWindows
to
true
為讓方法被調用。
另請參閱 QWebEngineView::createWindow ().
返迴托管此頁麵開發者工具的頁麵,若有的話。
返迴
nullptr
若未設置開發者工具頁麵。
該函數在 Qt 5.11 引入。
另請參閱 setDevToolsPage () 和 inspectedPage ().
下載來自定位的資源,給定通過 url 到本地文件。
若 filename 被給定,它會被用作建議文件名。若它是相對的,則采用給定名稱把文件保存在標準下載定位。若它是 null 或空 QString ,使用默認文件名。
這會發射 QWebEngineProfile::downloadRequested (),在下載開始後。
該函數在 Qt 5.10 引入。
[override virtual]
bool
QWebEnginePage::
event
(
QEvent
*
e
)
重實現: QObject::event (QEvent *e).
查找指定字符串, subString ,在頁麵使用給定 options 。 findTextFinished () 信號被發射當字符串搜索完成時。
要清零搜索高亮,隻需傳遞空字符串。
The
resultCallback
必須接受布爾參數。它會被調用采用值
true
若
subString
被找到;否則,迴調值將為
false
.
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
例如:
m_view->page()->findText(QStringLiteral("Qt"), QWebEnginePage::FindFlags(), [this](bool found) {
if (!found) QMessageBox::information(m_view, QString(), QStringLiteral("No occurrences found"));
});
另請參閱 findTextFinished ().
返迴指嚮導航網頁的視圖曆史的指針。
返迴此頁麵正在審查的頁麵,若有的話。
返迴
nullptr
若此頁麵不是開發者工具頁麵。
該函數在 Qt 5.11 引入。
另請參閱 setInspectedPage () 和 devToolsPage ().
[virtual protected]
void
QWebEnginePage::
javaScriptAlert
(const
QUrl
&
securityOrigin
, const
QString
&
msg
)
此函數被調用,每當 JavaScript 程序運行在附屬框架采用
securityOrigin
調用
alert()
函數采用消息
msg
.
默認實現展示消息, msg ,采用 QMessageBox::information .
[virtual protected]
bool
QWebEnginePage::
javaScriptConfirm
(const
QUrl
&
securityOrigin
, const
QString
&
msg
)
此函數被調用,每當 JavaScript 程序運行在附屬框架采用
securityOrigin
調用
confirm()
函數采用消息
msg
。返迴
true
若用戶確認消息;否則返迴
false
.
它也會被調用當
onbeforeunload
處理程序請求確認在離開頁麵之前。
默認實現執行查詢使用 QMessageBox::information with QMessageBox::Ok and QMessageBox::Cancel 按鈕。
[virtual protected]
void
QWebEnginePage::
javaScriptConsoleMessage
(
QWebEnginePage::JavaScriptConsoleMessageLevel
level
, const
QString
&
message
,
int
lineNumber
, const
QString
&
sourceID
)
此函數被調用,當 JavaScript 程序試著打印 message 到 Web 瀏覽器控製颱。
For example, in case of evaluation errors the source URL may be provided in sourceID as well as the lineNumber .
level indicates the severity of the event that triggered the message. That is, whether it was triggered by an error or a less severe event.
從 Qt 5.6 起,默認實現日誌消息按
js
日誌類彆
.
另請參閱 控製颱日誌 .
[virtual protected]
bool
QWebEnginePage::
javaScriptPrompt
(const
QUrl
&
securityOrigin
, const
QString
&
msg
, const
QString
&
defaultValue
,
QString
*
result
)
此函數被調用,每當 JavaScript 程序運行在附屬框架采用 securityOrigin tries to prompt the user for input. The program may provide an optional message, msg , as well as a default value for the input in defaultValue .
If the prompt was cancelled by the user, the implementation should return
false
; otherwise the result should be written to
result
and
true
should be returned. If the prompt was not cancelled by the user, the implementation should return
true
and the result string must not be null.
默認實現使用 QInputDialog::getText ().
加載 url 進此頁麵。
注意: 視圖仍然相同,直到達成足夠數據纔顯示新 URL。
另請參閱 setUrl (), setHtml (),和 setContent ().
發齣指定 request 並加載響應。
該函數在 Qt 5.9 引入。
另請參閱 load (), setUrl (), url (), urlChanged (),和 QUrl::fromUserInput ().
將頁麵的當前內容渲染成臨時 PDF 文檔,然後打印它使用 printer .
將檢索用於創建和打印 PDF 文檔的設置從 printer object. It is the users responsibility to ensure the printer 仍然有效直到 resultCallback has been called.
注意: 打印運行在瀏覽器進程中,默認未沙盒化。
The
resultCallback
must take a boolean as parameter. If printing was successful, this boolean will have the value
true
, otherwise, its value will be
false
.
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
注意: 此函數會光柵化結果,當渲染到 printer 。請考慮提高默認分辨率為 printer 到至少 300 DPI (每英寸點數) 或使用 printToPdf () 以更有效地産生 PDF 文件輸齣。
該函數在 Qt 5.8 引入。
把頁麵的當前內容渲染成 PDF 文檔,並將它保存在指定位置 filePath 。産生的 PDF 文檔的頁麵大小和取嚮,獲取自指定值 pageLayout .
為將網頁打印成 PDF,此方法發齣異步請求,並立即返迴。要通報請求的有關結果,連接到信號 pdfPrintingFinished ().
若提供的文件路徑已存在,將覆寫它。
該函數在 Qt 5.7 引入。
另請參閱 pdfPrintingFinished ().
把頁麵的當前內容渲染成 PDF 文檔,並將包含 PDF 數據的字節數組作為參數返迴給 resultCallback 。産生的 PDF 文檔的頁麵大小和取嚮,獲取自指定值 pageLayout .
The resultCallback 必須接受 const 引用對 QByteArray 作為參數。若打印成功,此字節數組將包含 PDF 數據,否則,字節數組將為空。
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
該函數在 Qt 5.7 引入。
返迴頁麵所屬 Web 引擎 Profile (配置文件)。
該函數在 Qt 5.5 引入。
替換當前拼寫錯誤單詞采用 replacement .
可以找到當前拼寫錯誤單詞在 QWebEngineContextMenuData::misspelledWord (),且置換建議在 QWebEngineContextMenuData::spellCheckerSuggestions ().
該函數在 Qt 5.8 引入。
另請參閱 contextMenuData ().
把當前加載網頁保存到磁盤。
網頁被保存到 filePath 以指定 format .
這是以下動作的捷徑:
此函數為網頁發齣異步下載請求,並立即返迴。
該函數在 Qt 5.8 引入。
另請參閱 QWebEngineDownloadItem::SavePageFormat .
返迴被注入到頁麵中的腳本集閤。
此外,頁麵還可能執行添加腳本透過 QWebEngineProfile::scripts ().
另請參閱 QWebEngineScriptCollection , QWebEngineScript ,和 腳本注入 .
把網頁內容設為
data
。若
mimeType
自變量為空,假定內容為
text/plain,charset=US-ASCII
.
內容中引用的外部對象的定位相對於 baseUrl .
The data 被立即加載;外部對象是異步加載的。
注意: 此方法不會影響頁麵會話或全局曆史。
警告: 內容將被 % (百分號) 編碼在憑藉 IPC 被發送到渲染器之前。這可能增加其大小。% (百分號) 編碼內容的最大大小 = 2 MB - 6 Bytes + MIME 類型字符串長度。
綁定 devToolsPage 成此頁麵的開發者工具。觸發 devToolsPage 以采用開發者工具導航到內部 URL。
這如同調用
setInspectedPage
() 在
devToolsPage
with
this
作為自變量。
該函數在 Qt 5.11 引入。
另請參閱 devToolsPage () 和 setInspectedPage ().
設置網站權限標識通過 securityOrigin 要使用 feature to policy .
注意: This method is primarily for calling after a featurePermissionRequested () signal has been emitted to trigger the feature permission response. It can also be called before a request has been emitted, but will only set a granted permission for passive checks, mainly for Notification APIs that can check if permission has already been granted before explicitly requesting it.
另請參閱 featurePermissionRequested () 和 featurePermissionRequestCanceled ().
將此頁麵的內容設為 html . baseUrl 是可選的和用於解析文檔中的相對 URL,譬如:引用的圖像或樣式錶。
The html 被立即加載;外部對象是異步加載的。
若腳本在 html 運行時間超過默認 (目前 10 秒) 腳本超時,(例如:由於被模態 JavaScript 警報對話框所阻塞),此方法將盡快返迴在超時之後且任何後續 html 將異步加載。
When using this method, the web engine assumes that external resources, such as JavaScript programs or style sheets, are encoded in UTF-8 unless otherwise specified. For example, the encoding of an external script can be specified through the charset attribute of the HTML script tag. It is also possible for the encoding to be specified by the web server.
此方便函數相當於 setContent (html, "text/html", baseUrl).
注意: 此方法不會影響頁麵會話或全局曆史。
警告: This function works only for HTML, for other mime types (such as XHTML and SVG) setContent () 應該被使用以取而代之。
警告: The content will be percent encoded before being sent to the renderer via IPC. This may increase its size. The maximum size of the percent encoded content is 2 megabytes minus 30 bytes.
另請參閱 toHtml (), setContent (),和 load ().
將此頁麵的內部開發者工具 URL 導航到 page .
這如同調用
setDevToolsPage
() 在
page
with
this
作為自變量。
該函數在 Qt 5.11 引入。
另請參閱 inspectedPage () 和 setDevToolsPage ().
注冊請求攔截器 interceptor 到攔截 URL 請求。
頁麵不擁有指針的所有權。此攔截器被調用,在 Profile (配置文件) 中的任何攔截器之後,且不像 Profile 攔截器,僅攔截來自此頁麵的 URL 請求。
要取消請求攔截器設置,設置
nullptr
.
該函數在 Qt 5.13 引入。
另請參閱 QWebEngineUrlRequestInfo and QWebEngineProfile::setUrlRequestInterceptor ().
設置 view 關聯網頁。
另請參閱 view ().
將此頁麵要使用的 Web 通道實例設為
channel
並使用 Chromium IPC (進程間通信) 消息將它連接到 Web 引擎傳輸。傳輸被暴露在 JavaScript 世界
worldId
as
qt.webChannelTransport
,其應該被使用當使用
Qt WebChannel JavaScript API
.
注意: 頁麵不擁有通道對象的所有權。
注意: 每頁麵隻可以安裝一 Web 通道,即使在另一 JavaScript 世界中設置瞭一個也會卸載任何已安裝的 Web 通道。
該函數在 Qt 5.7 引入。
另請參閱 webChannel () 和 QWebEngineScript::ScriptWorldId .
這是重載函數。
將此頁麵要使用的 Web 通道實例設為 channel 並將其安裝在主 JavaScript 世界。
采用此方法,可以通過網頁內容訪問 Web 通道。若內容不受控製且可能懷有敵意,這會是安全問題且應考慮將它安裝在私有 JavaScript 世界中。
該函數在 Qt 5.5 引入。
另請參閱 QWebEngineScript::MainWorld .
返迴指嚮頁麵設置對象的指針。
另請參閱 QWebEngineSettings::defaultSettings ().
以 HTML 形式檢索頁麵內容 (封閉於 HTML 和 BODY 標簽) 的異步方法。成功完成後, resultCallback 被調用帶有頁麵內容。
注意: resultCallback 可以是函數指針、函子或 Lambda,且期望接受 QString 參數。
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
另請參閱 setHtml () 和 toPlainText ().
把檢索頁麵的內容 (完全剝離所有 HTML 格式) 轉換為純文本的異步方法。成功完成時, resultCallback 被調用帶有頁麵內容。
注意: resultCallback 可以是函數指針、函子或 Lambda,且期望接受 QString 參數。
警告: 我們保證迴調 ( resultCallback ) 始終被調用,但可能在頁麵銷毀期間完成。當 QWebEnginePage 被刪除,將采用無效值觸發迴調,因此是不安全的使用相應 QWebEnginePage or QWebEngineView 實例在其中。
另請參閱 toHtml ().
[虛擬]
void
QWebEnginePage::
triggerAction
(
QWebEnginePage::WebAction
action
,
bool
checked
= false)
此函數可以被調用以觸發指定 action 。它也會被調用通過 Qt WebEngine 若用戶觸發動作 (例如:透過上下文菜單項)。
若 action 是可復選動作,則 checked 指定動作是否被觸發。
另請參閱 action ().
返迴與網頁關聯的視圖 Widget。
另請參閱 setView ().
返迴指嚮此頁麵所用的 Web 通道實例的指針,或 none 指針若未設置。此通道通過 Chromium IPC (進程間通信) 自動使用內部 Web 引擎傳輸機製,該機製在此頁麵的 JavaScript 上下文中被公開為
qt.webChannelTransport
.
該函數在 Qt 5.5 引入。
另請參閱 setWebChannel ().