Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
energye
energy
提交
9cc258f0
energy
项目概览
energye
/
energy
通知
13
Star
2
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
energy
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
9cc258f0
编写于
9月 19, 2023
作者:
yanghye
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
demo update
上级
20b8b8be
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
11 addition
and
8 deletion
+11
-8
example/context-menu/context-menu.go
example/context-menu/context-menu.go
+4
-3
example/proxy/proxy.go
example/proxy/proxy.go
+4
-3
example/scheme/scheme.go
example/scheme/scheme.go
+3
-2
未找到文件。
example/context-menu/context-menu.go
浏览文件 @
9cc258f0
...
...
@@ -52,7 +52,7 @@ func main() {
radioDefault2Check
consts
.
MenuId
)
//右键弹出菜单
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
)
bool
{
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
,
window
cef
.
IBrowserWindow
)
bool
{
//既然是自定义,当然要去除之前事先定义好的
model
.
Clear
()
//开始创建菜单,每个菜单项都有自己的ID, 所以要先定义一个能保存这些菜单项的ID的变量
...
...
@@ -118,9 +118,9 @@ func main() {
return
true
})
//右键菜单项命令
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
menuId
consts
.
MenuId
,
eventFlags
uint32
,
result
*
bool
)
{
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
menuId
consts
.
MenuId
,
eventFlags
uint32
,
window
cef
.
IBrowserWindow
)
bool
{
fmt
.
Printf
(
"params: %+v
\n
"
,
params
)
fmt
.
Println
(
"menuId: "
,
menuId
,
eventFlags
,
*
result
)
fmt
.
Println
(
"menuId: "
,
menuId
,
eventFlags
)
//在这里处理某个菜单项的点击事件所触发的命令,这里的命令对应着一个菜单项的ID
var
clickMenuId
=
0
switch
menuId
{
...
...
@@ -141,6 +141,7 @@ func main() {
}
ipc
.
Emit
(
"menu"
,
clickMenuId
,
fmt
.
Sprintf
(
"菜单 %d 随便传点什么吧 但是,字符串参数字符串参数字符串参数字符串参数字符串参数字符串参数字符串参数."
,
menuId
))
//*result = true
return
true
})
})
//运行应用
...
...
example/proxy/proxy.go
浏览文件 @
9cc258f0
...
...
@@ -27,7 +27,7 @@ func main() {
loadEnergyUrl
consts
.
MenuId
loadBaiduUrl
consts
.
MenuId
)
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
)
bool
{
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
,
window
cef
.
IBrowserWindow
)
bool
{
model
.
AddSeparator
()
loadEnergyUrl
=
model
.
CefMis
.
NextCommandId
()
model
.
AddCheckItem
(
loadEnergyUrl
,
"load-energy"
)
...
...
@@ -35,18 +35,19 @@ func main() {
model
.
AddCheckItem
(
loadBaiduUrl
,
"load-baidu"
)
return
false
})
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
commandId
consts
.
MenuId
,
eventFlags
uint32
,
result
*
bool
)
{
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
commandId
consts
.
MenuId
,
eventFlags
uint32
,
window
cef
.
IBrowserWindow
)
bool
{
if
commandId
==
loadEnergyUrl
{
window
.
Chromium
()
.
LoadUrl
(
"https://energy.yanghy.cn"
)
}
else
if
commandId
==
loadBaiduUrl
{
window
.
Chromium
()
.
LoadUrl
(
"https://www.baidu.com"
)
}
return
true
})
// 使用 load start 和 load end 回调观察当前加载的url
event
.
SetOnLoadStart
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
transitionType
consts
.
TCefTransitionType
)
{
fmt
.
Println
(
"load-start:"
,
frame
.
Url
())
})
event
.
SetOnLoadEnd
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
httpStatusCode
int32
)
{
event
.
SetOnLoadEnd
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
httpStatusCode
int32
,
window
cef
.
IBrowserWindow
)
{
fmt
.
Println
(
"load-end:"
,
frame
.
Url
())
})
// 在 on before browser 配置代理
...
...
example/scheme/scheme.go
浏览文件 @
9cc258f0
...
...
@@ -40,7 +40,7 @@ func main() {
var
idClear
consts
.
MenuId
var
idURL
consts
.
MenuId
// 在右键菜单实现这个示例
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
)
bool
{
event
.
SetOnBeforeContextMenu
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
model
*
cef
.
ICefMenuModel
,
window
cef
.
IBrowserWindow
)
bool
{
model
.
AddSeparator
()
idScheme
=
model
.
CefMis
.
NextCommandId
()
model
.
AddItem
(
idScheme
,
"RegScheme"
)
...
...
@@ -51,7 +51,7 @@ func main() {
return
true
})
// 右键菜单命令
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
commandId
consts
.
MenuId
,
eventFlags
uint32
,
result
*
bool
)
{
event
.
SetOnContextMenuCommand
(
func
(
sender
lcl
.
IObject
,
browser
*
cef
.
ICefBrowser
,
frame
*
cef
.
ICefFrame
,
params
*
cef
.
ICefContextMenuParams
,
commandId
consts
.
MenuId
,
eventFlags
uint32
,
window
cef
.
IBrowserWindow
)
bool
{
if
commandId
==
idScheme
{
// 创建 SchemeHandlerFactory
factory
:=
cef
.
SchemeHandlerFactoryRef
.
New
()
...
...
@@ -141,6 +141,7 @@ func main() {
}
else
if
commandId
==
idClear
{
browser
.
GetRequestContext
()
.
ClearSchemeHandlerFactories
()
}
return
true
})
})
//运行应用
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录