我想将Chromium Embedded Framework作为我的OpenGL应用程序的GUI。
我正在使用屏幕外渲染。
如何单击HTML按钮/链接何时?
我尝试使用谷歌搜索,但是使用通用搜索词只有噪音。一般用法Wiki也不包含此。
我认为您应该在JS代码中捕获事件,然后将消息发送到C 代码。可以使用此处描述的消息路由器完成:https://bitbucket.org/chromiumiumembedded/cef/wiki/generalusage#markdown-header-asynchronous-javascript bindings
也可以使用JS Integration Mechanic实现自定义消息路由器:https://bitbucket.org/chromiumumembedded/cef/wiki/javascriptIntegration.md
您是否将任何UI事件从OpenGL应用程序传递给CEF?
通常,您应将OpenGL 和 CEF实例附加到同一窗口。您还应覆盖Window区域无效的请求,以通知您的OpenGL代码,它需要将其用于Rerender窗口,包括该屏幕缓冲区的内容。
动作序列:
- 窗口接收鼠标移动事件。
- 窗口将其传递到您的CEF实例。
- 如果CEF确定需要应用:悬停状态到您的按钮,则它将调用窗口。
- 您通过更新OpenGL场景来处理该窗口。
- 从CEF中,您还应该收到各种辅助DOM事件,以响应鼠标移动/向上/向下/等。在窗口上。
并检查以下内容:http://sciter.com/sciter-and-directx/-它是带有SCITER引擎的集成html/css UI的DirectX窗口。目前,我正在设计相同的功能,但对于OpenGl。