当前位置: 首页 > news >正文

网站用什么东西做wordpress是否可以排版

网站用什么东西做,wordpress是否可以排版,精美ppt模板下载,网站建设要学哪些方面CEF 在 Go 中的应用实现 示例链接 1. 初始化和配置 在使用 CEF 创建基于浏览器的应用时,首先需要初始化并配置应用实例。 1.1 创建应用实例 // 创建CEF应用实例 app : cef.NewApplication()1.2 配置应用参数 // 设置缓存路径 rootCache : filepath.Join(const…

CEF 在 Go 中的应用实现

示例链接

1. 初始化和配置

在使用 CEF 创建基于浏览器的应用时,首先需要初始化并配置应用实例。

1.1 创建应用实例

// 创建CEF应用实例
app := cef.NewApplication()

1.2 配置应用参数

// 设置缓存路径
rootCache := filepath.Join(consts.CurrentExecuteDir, "rootcache")
app.SetRootCache(rootCache)
app.SetCache(filepath.Join(rootCache, "cache"))// 启用GPU加速
app.SetEnableGPU(true)

2. 事件处理

注册并处理浏览器事件,如页面加载完成、标题变化等。

2.1 注册事件

cef.BrowserWindow.SetBrowserInit(func(event *cef.BrowserEvent, window cef.IBrowserWindow) {if window.IsLCL() {form.CreateComponent(window)}
})

2.2 处理页面加载事件

chromium.Chromium().SetOnLoadingStateChange(func(sender lcl.IObject, browser *cef.ICefBrowser, isLoading, canGoBack, canGoForward bool) {cef.QueueAsyncCall(func(id int) {stop.SetEnabled(isLoading)refresh.SetEnabled(!isLoading)back.SetEnabled(canGoBack)forward.SetEnabled(canGoForward)})
})

3. 多窗口和标签管理

创建和管理多个浏览器窗口或标签页。

3.1 创建新标签页

func newTabBrowser(window *cef.LCLBrowserWindow, page *lcl.TPageControl) {tabSheet := lcl.NewTabSheet(window)tabSheet.SetPageControl(page)tabSheet.SetCaption("[New Browser]")// 创建浏览器实例chromium := cef.NewChromiumBrowser(tabSheet, nil)chromium.SetSelfWindow(window)chromium.RegisterDefaultEvent()if common.IsWindows() {chromium.CreateBrowser()}page.SetActivePage(tabSheet)tabs[name] = &tabBrowser{tab: tabSheet, chromium: chromium}
}

3.2 关闭标签页

func closeTab(name string) {if tab, ok := tabs[name]; ok && tab != nil {tab.isClose = truetab.chromium.Chromium().CloseBrowser(false)delete(tabs, name)}
}

4. 集成 LCL 组件

将 CEF 浏览器嵌入到 LCL 创建的 GUI 窗口中。

4.1 创建窗口布局

func CreateComponent(window cef.IBrowserWindow) {bw := window.AsLCLBrowserWindow().BrowserWindow()page := windowBottomLayout(bw)windowTopLayout(bw, page)
}

4.2 工具栏和地址栏

func toolBar(window *cef.LCLBrowserWindow, toolPanel *lcl.TPanel) (goBack *lcl.TButton, goForward *lcl.TButton, stop *lcl.TButton, refresh *lcl.TButton, goUrl *lcl.TButton, progressLabel *lcl.TLabel, addrBox *lcl.TComboBox) {// 创建按钮和地址栏组件goBack = lcl.NewButton(toolPanel)goBack.SetCaption("后退")// 类似地创建其他按钮和地址栏return
}

5. 运行应用

启动应用的消息循环,处理多线程的消息泵。

func main() {cef.GlobalInit(nil, nil)rootCache := filepath.Join(consts.CurrentExecuteDir, "rootcache")app := cef.NewApplication()app.SetRootCache(rootCache)app.SetCache(filepath.Join(rootCache, "cache"))app.SetEnableGPU(true)cef.BrowserWindow.Config.Url = "https://www.baidu.com/"cef.BrowserWindow.SetBrowserInit(func(event *cef.BrowserEvent, window cef.IBrowserWindow) {if window.IsLCL() {form.CreateComponent(window)}})cef.Run(app)
}

6. 平台差异处理

在不同平台上,消息泵和窗口管理可能有所不同。

6.1 Windows

if common.IsWindows() {chromium.CreateBrowser()
}

6.2 Linux 和 MacOSX

window.SetOnActivateAfter(func(sender lcl.IObject) {chromium.CreateBrowser()
})

通过以上步骤,可以创建一个功能丰富的基于 CEF 的浏览器应用,支持多窗口、标签管理以及与 LCL 组件的集成。

http://www.yayakq.cn/news/647632/

相关文章:

  • 个人网站备案需要哪些资料asp企业网站设计
  • 建设一个企业网站要多少钱微信小程序设计网站
  • wordpress添加赏seo排名工具哪个好
  • 如何让网站快速收录你免费发布信息网有哪些网站
  • 昆山网站建设苦瓜网络辽宁建设厅证件查询网站
  • 天河企业网站建设上海移动端网站建设
  • 怎么给自己建网站全网整合营销推广
  • 泰州整站优化文创产品设计案例及理念
  • 字体在线设计网站wordpress自定义工具栏
  • 图片网站 seo长尾关键词搜索网站
  • 网站建设中 源码如何做网站首页关键词
  • 珠海网站建设小小网络几百块钱可以做网站吗
  • 网站建设应注意哪些事项高大上的网站欣赏
  • 建设项目环境影响登记网站天津东阳便宜自适应网站建设优惠
  • 在哪里申请网站域名常德seo快速排名
  • 内蒙古住房和城乡建设厅网站网易163企业邮箱登录入口
  • php 网站制作的意义基于php旅游网站开发源代码
  • 搭建网站用服务器还是虚拟主机wordpress会员查看发布插件
  • 网站开发怎样验收广州 四合一网站开发
  • 找回网站备案密码没有网站可以做seo吗
  • 有哪些可以做图的网站啊云南装饰公司做网站
  • 高性能网站建设指南广告设计公司宣传海报
  • 网站做的好看的怎么在华为防火墙做网站映射
  • 东莞技术支持网站建设专家网站建设手机网站
  • 苏州制作网站哪家好河南省住房建设厅网站首页
  • 访问网站详细过程一对一视频软件开发
  • 网站建设与管理教学大纲帮别人设计网站
  • 普集网站制作大淘客 wordpress
  • 厦门网站建设方案咨询怎么自己免费制作app
  • 自助建站系统搭建苏州做学校网站的