- 组件功能接口 IChromiumProc
- 接口-功能函数
- On-事件监听
- 执行JavaScript
- Emit-事件
- EmitAndCallback-事件
- EmitAndReturn-事件
- 设置默认加载地址
- 启动多浏览器模式
- 加载URL
- 加载HTML
- 下载图片
- 重新加载
- 停止加载
- 设置缩放
- 重置缩放
- 关闭所有浏览器
- 创建浏览器
- 已初始化
- 获取BrowserId
- 是否为当前浏览器
- 打印保存为PDF
- 打印预览
- 开始下载
- 下载取消
- 下载暂停/开始
- 后退
- 前进
- 关闭浏览器
- 显示开发者工具
- 关闭开发者工具
- 通知移动或调整大小已开始
- 获取所有 cookie
- 获取指定URL cookie
- 删除指定URL cookie
- 设置 cookie
- 设置代理
- 更新首选项
- 执行开发者工具方法
- 发送进程消息
- 创建客户端句柄
- 设置焦点
- 发送捕获丢失事件
- IFrame是否获取焦点
组件功能接口 IChromiumProc
定义 接口类型
继承 lcl.IObject
接口-功能函数
On-事件监听
On(name string, eventCallback ipc.EventCallback)
字段 | 描述 |
---|---|
name | 事件名 |
EventCallback | 事件触发回调函数 |
执行JavaScript
无返回值
ExecuteJavaScript(code, scriptURL string, startLine int32)
字段 | 描述 |
---|---|
code | 执行的函数名或代码 |
scriptURL | 脚本地址 可为空 |
startLine | scriptURL字段不为空时的启始执行行号 ,scriptURL字段为空是0 |
Emit-事件
Emit(eventName string, args ipc.IArgumentList, target IEmitTarget) ProcessMessageError
异步触发Web端JavaScript监听(on)事件, 无返回值
字段 | 描述 |
---|---|
eventName | 触发Web端JavaScript监听(on)事件名 |
IArgumentList | 触发事件传递参数 |
target | 触发目标事件,nil时为主窗口监听的事件 |
ProcessMessageError | 返回值-事件触发是否成功 |
EmitAndCallback-事件
EmitAndCallback(eventName string, args ipc.IArgumentList, target IEmitTarget, callback ipc.IPCCallback) ProcessMessageError
异步触发Web端JavaScript监听(on)事件, 回调函数可获取Web端返回的参数
字段 | 描述 |
---|---|
eventName | 触发Web端JavaScript监听(on)事件名 |
IArgumentList | 触发事件传递参数 |
target | 触发目标事件,nil时为主窗口监听的事件 |
IPCCallback | Web端返回结果执行该函数 |
ProcessMessageError | 返回值-事件触发是否成功 |
EmitAndReturn-事件
EmitAndReturn(eventName string, args ipc.IArgumentList, target IEmitTarget) (ipc.IIPCContext, ProcessMessageError)
同步触发Web端JavaScript监听(on)事件,带有返回值, 不适用于主IU线程,在主IU线程使用会造成锁死现象,适于非主UI线程。
字段 | 描述 |
---|---|
eventName | 触发Web端JavaScript监听(on)事件名 |
IArgumentList | 触发事件传递参数 |
target | 触发目标事件,nil时为主窗口监听的事件 |
IIPCContext | 返回值-上下文 |
ProcessMessageError | 返回值-事件触发是否成功 |
设置默认加载地址
SetDefaultURL(defaultURL string)
字段 | 描述 |
---|---|
defaultURL | URL地址或本地html目录 |
启动多浏览器模式
SetEnableMultiBrowserMode(enableMultiBrowserMode bool)
加载URL
LoadUrl(url string)
加载HTML
LoadHtml(html string)
下载图片
DownloadImage(imageUrl string, isFavicon bool, maxImageSize int32, bypassCache bool)
重新加载
Reload()
停止加载
StopLoad()
设置缩放
BrowserZoom(zoom ZOOM)
重置缩放
ResetZoomLevel()
关闭所有浏览器
CloseAllBrowsers()
创建浏览器
CreateBrowser(window ITCefWindow) bool
字段 | 描述 |
---|---|
ITCefWindow | 窗口父组件 |
已初始化
Initialized() bool
获取BrowserId
BrowserId() int32
是否为当前浏览器
IsSameBrowser(browser *ICefBrowser) bool
打印保存为PDF
PrintToPDF(saveFilePath string)
打印预览
Print()
开始下载
StartDownload(url string)
触发事件函数SetOnBeforeDownload(fn ChromiumEventOnBeforeDownload)
SetOnDownloadUpdated(fn ChromiumEventOnDownloadUpdated)
下载取消
BrowserDownloadCancel(browseId, downloadId int32)
下载暂停/开始
BrowserDownloadPause(browseId, downloadId int32)
后退
GoBack()
前进
GoForward()
关闭浏览器
CloseBrowser(forceClose bool)
显示开发者工具
ShowDevTools(window ITCefWindow)
字段 | 描述 |
---|---|
ITCefWindow | 窗口父组件 |
关闭开发者工具
CloseDevTools(window ITCefWindow)
字段 | 描述 |
---|---|
ITCefWindow | 窗口父组件 |
通知移动或调整大小已开始
NotifyMoveOrResizeStarted()
获取所有 cookie
VisitAllCookies(id int32)
字段 | 描述 |
---|---|
id | 默认传0 |
获取指定URL cookie
VisitURLCookies(url string, includeHttpOnly bool, id int32)
字段 | 描述 |
---|---|
id | 默认传0 |
删除指定URL cookie
DeleteCookies(url, cookieName string, deleteImmediately bool)
字段 | 描述 |
---|---|
id | 默认传0 |
设置 cookie
SetCookie(url, name, value, domain, path string,
secure, httponly, hasExpires bool,
creation, lastAccess, expires time.Time,
sameSite TCefCookieSameSite, priority TCefCookiePriority, aSetImmediately bool, aID int32)
字段 | 描述 |
---|---|
url | 指定的URL |
name | cookie名称 |
value | cookie值 |
domain | 可以访问该Cookie的域名。如果设置为“.baidu.com”,则所有以“baidu.com”结尾的域名都可以访问该Cookie。注意第一个字符必须为“.”。 |
path | Cookie的使用路径。如果设置为“/sessionWeb/”,则只有contextPath为“/sessionWeb”的程序可以访问该Cookie。如果设置为“/”,则本域名下contextPath都可以访问该Cookie。注意最后一个字符必须为“/”。 |
secure | 该Cookie是否仅被使用安全协议传输。安全协议。安全协议有HTTPS,SSL等,在网络上传输数据之前先将数据加密。默认为false。 |
httponly | 是否为只读 |
hasExpires | 是否已到期 |
creation | 创建时间 |
lastAccess | 最后访问时间 |
expires | 到期时间 |
sameSite | CSRF模式 |
priority | cookie属性级别 |
aSetImmediately | 是否立即设置 |
aID | cookie的ID,默认值0 |
设置代理
SetProxy(cefProxy *TCefProxy)
字段 | 描述 |
---|---|
TCefProxy | 代理对象 |
更新首选项
UpdatePreferences()
字段 | 描述 |
---|---|
执行开发者工具方法
ExecuteDevToolsMethod(messageId int32, method string, dictionaryValue *ICefDictionaryValue)
字段 | 描述 |
---|---|
messageId | 消息ID |
method | 方法名称 |
ICefDictionaryValue | 参数字典值 |
发送进程消息
SendProcessMessage(targetProcess CefProcessId, processMessage *ipc.ICefProcessMessage) int
触发事件函数SetOnProcessMessageReceived(fn BrowseProcessMessageReceived)
字段 | 描述 |
---|---|
CefProcessId | 进程ID PID_BROWSER 和 PID_RENDER |
ICefProcessMessage | 进程消息参数 |
创建客户端句柄
CreateClientHandler(client *ICefClient, alsOSR bool) bool
字段 | 描述 |
---|---|
ICefClient | |
alsOSR | 是否OSR模式 |
设置焦点
SetFocus(value bool)
发送捕获丢失事件
SendCaptureLostEvent()
IFrame是否获取焦点
FrameIsFocused() bool