为编程爱好者分享易语言教程源码的资源网
好用的代理IP,游戏必备 ____广告位招租____ 服务器99/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器
好用的代理IP,游戏必备 ____广告位招租____ 服务器低至38/年 ____广告位招租____ ____广告位招租____ 挂机,建站服务器

网站首页 > 易语言相关 > 易语言例程 正文

易语言利用WebKit打造你的HTML5浏览器

三叶资源网 2019-09-10 17:18:11 易语言例程 5886 ℃ 14 评论

第一期使用命令介绍:

类:

(CefApp): 与进程,命令行参数,代理,资源管理相关的回调类

(CefBrowserProcessHandler): 用于接收进程相关的回调通知。

(CefClient): 回调管理类,主要是用于向浏览器反回我们需要接管哪些功能的类。

(CefLifeSpanHandler):浏览器的运行管理类,包含当浏览器创建完成之后,浏览器被关闭等通知

(CefMainArgs): 数据类,用于设置当前应用实例句柄的。

(CefSettings): 数据类,用于设置一些浏览器整体的基本信息

(CefWindowInfo): 数据类,用于设置一些浏览器的窗口信息

(CefBrowserSettings): 数据类,用于设置一些浏览器的基本信息


用到的类命令:

返回值 (CefBrowserProcessHandler) = (CefApp).GetBrowserProcessHandler()  '获取一个用于管理浏览器进程的类

返回值 空= (CefBrowserProcessHandler).OnContextInitialized()  '回调通知函数,告诉我们浏览器已经准备就绪了。

返回值 (CefLifeSpanHandler) = (CefClient).GetLifeSpanHandler()  '向浏览器返回我们用于接管浏览器进程的类

返回值 空 = (CefLifeSpanHandler).OnAfterCreated()  '回调通知函数,用于告诉我们,当前有一个新的浏览器创建好了

返回值 空 = (CefLifeSpanHandler).DoClose()  '回调通知函数,貌似是表示所有浏览器都关闭之后,Cef上有一大段注释,但是TM始终看不明白...

返回值 空 = (CefLifeSpanHandler).OnBeforeClose()  '回调通知函数,用于告诉我们,当前有一个浏览器被关闭了

返回值 空 = CefMainArgs.Load()  '数据类函数,用于设置当前当前应用的实例句柄

返回值 空 = CefSettings.SetAsSingleProcess()  '数据类函数,是否使用单进程运行浏览器, 1.单进程运行 0.多进程运行。默认是以多进程运行的。

返回值 空 = CefSettings.SetAsNoSandbox()  '数据类函数,是否关闭沙盘功能

返回值 空 = CefSettings.SetAsRemoteDebuggingPort()  '数据类函数,设置远程调试端口

返回值 空 = CefWindowInfo.SetAsChild()  '数据类函数,设置浏览器窗口为子窗口


通用类命令:


(All).AddRef()  '给这个函数所属的类增加一次引用计数

(All).Release()  '给这个函数所属的类释放一次引用计数

(All).HasOneRef()  '判断当前这个类是不是第一次被引用

(All).Wrap()  '实际上《Hello WebKit》框架的类都是以一种接近于C++类的存在,为了能给浏览器使用,我们必须要将这个类转换为近似于C的类。这个函数就有这样的作用

(All).Unwrap()  '从C类中取回我们的C++类

(All).ToCpp__() '导入或取出由浏览器提供的类指针或者数据指针


通用命令:

CefBrowserHostCreateBrowserSync()  '创建一个新的浏览器,成功返回浏览器类CefBrowser.

CefExecuteProcess()  '初始化浏览器进程

CefInitialize()  '全初始化,该函数执行完成之后,(CefBrowserProcessHandler).OnContextInitialized() 将收到通知

CefRunMessageLoop()  '浏览器进程消息循环

CefShutdown()  '浏览器进程结束

CefQuitMessageLoop()  '向所有(多进程下)浏览器进程发送结束通知

REQUIRE_UI_THREAD()  '调试函数,用于检查执行到该函数位置的线程/进程是否为UI线程/进程,如果不是将被中断下来

CEF_BROWSER_RELEASE()  '释放一次浏览器的引用计数


第二期使用命令介绍:


(CefDisplayHandler): 与浏览器状态显示相关的类

(CefBrowser): 浏览器类,用于控制或者取得浏览器的相关信息,最常用的类

(CefBrowserHost): 浏览器窗口类,用于控制或者取得浏览器窗口的相关信息,最常用的类

(CefFrame): 浏览器框架类,用于控制或者取得浏览器框架的相关信息,最常用的类,后期对网页的各种操作都由这个类来操作,包括javascript脚本的执行

(CefString): 字符串类,与字符串操作相关的类,最常用的类


用到的类命令:



返回值 (CefDisplayHandler) = (CefClient).GetDisplayHandler()  '回调通知函数,向浏览器返回我们用于接管浏览器状态信息的类

返回值 空 = (CefDisplayHandler).OnAddressChange()  '回调通知函数,当浏览器地址发生改变时

返回值 空 = (CefDisplayHandler).OnTitleChange()  '回调通知函数,当浏览器标题发生改变时

返回值 空 = (CefDisplayHandler).OnStatusMessage()  '回调通知函数,当鼠标放置于热点或者链接上时

返回值 逻辑型 = CefBrowser.CanGoBack()  '当前浏览器是否可以后退

返回值 空 = CefBrowser.GoBack()  '浏览器退回上一个网页

返回值 逻辑型 = CefBrowser.CanGoForward()  '当前浏览器是否可以前进

返回值 空 = CefBrowser.GoForward()  '浏览器前进到上一个网页

返回值 空 = CefBrowser.Reload()  '重新载入网页

返回值 空 = CefBrowser.StopLoad()  '停止载入网页

返回值 CefFrame = CefBrowser.GetMainFrame()  '取出当前浏览器的主网页框架类

返回值 CefBrowserHost= CefBrowser.GetHost()  '取出当前浏览器的窗口类

返回值 空 = CefFrame .LoadURL() '浏览一个新的URL

返回值 空 = CefBrowserHost.NotifyMoveOrResizeStarted() '通知浏览器需要调整窗口大小了

返回值 窗口句柄 = CefBrowserHost.GetWindowHandle() '取得浏览器的窗口句柄

返回值 字符串指针 = CefString.ToCpp__() '取出字符串指针

返回值 空= CefString.FromASCII() '从文本载入指针

返回值 空 = CefString.CopyI() '引用一个由系统提供的字符串指针

返回值 空 = CefString.CopyT() '复制一个新的Cef字符串

返回值 空 = CefString.ToString() '取出文本

--------------------------------------------------------------------------------------------------------------------------------------------------------

第二期,接着上期我们创建的浏览器,来继续完善它。


今天要给浏览器加上的功能:


前进,后退,刷新,浏览 等导航功能

显示网页标题功能

显示当前访问网址功能

显示鼠标指向链接功能

适应拖动窗口大小功能

@黑猫よ__

文件下载

来源:三叶资源网,欢迎分享,公众号:iisanye,(三叶资源网⑤群:21414575

已有14位网友发表了看法:

  • 易语言教程

    易语言教程  评论于 [2019-11-02 22:50:09]  回复

    易语言水星浏览器框架(CEF视图2.0)支持库

  • 访客

    访客  评论于 [2020-01-04 14:35:56]  回复

    怎么用

  • 编译成功

    编译成功  评论于 [2020-03-02 18:54:03]  回复

    易语言什么浏览器支持html5网页

  • 易语言

    易语言  评论于 [2020-04-17 21:01:27]  回复

    易语言Webkit模块怎么使用

  • 易语言

    易语言  评论于 [2020-04-25 15:56:39]  回复

    易语言水星浏览器支持库

  • 易语言

    易语言  评论于 [2020-05-09 15:59:08]  回复

    易语言调用webkit

  • yiyuyan

    yiyuyan  评论于 [2021-05-13 23:49:46]  回复

    易语言+显示html

欢迎 发表评论:

百度站内搜索
关注微信公众号
三叶资源网⑤群:三叶资源网⑤群

网站分类
随机tag
永辉生活登陆POST调试工具刺激战场辅助微信群发STEAM快手二维码LOL免更新易包​百合网注册炫彩设计器工程10086登录水印自动下载bitmap进程通讯对比两块内存迅雷播放器引擎JsDroid2模块巨人拉车超级列表框背景透明代理ip采集
最新评论