我想使用Chromium嵌入式框架作为我的OpenGL应用程序的GUI。铬嵌入式检测按钮按
我正在使用离屏渲染。
如何检测HTML按钮/链接何时被点击?
我试图谷歌这个,但与通用搜索词只有噪音。 一般使用wiki也不包含此内容。
我想使用Chromium嵌入式框架作为我的OpenGL应用程序的GUI。铬嵌入式检测按钮按
我正在使用离屏渲染。
如何检测HTML按钮/链接何时被点击?
我试图谷歌这个,但与通用搜索词只有噪音。 一般使用wiki也不包含此内容。
我想你应该在JS代码中捕获事件并发送消息给C++代码。 https://bitbucket.org/chromiumembedded/cef/wiki/GeneralUsage#markdown-header-asynchronous-javascript-bindings
也可以实现使用JS整合技工自定义消息路由器: https://bitbucket.org/chromiumembedded/cef/wiki/JavaScriptIntegration.md
您是否将OpenGL应用程序中的任何UI事件传递给CEF?
一般来说,您应该将OpenGL 和 CEF实例附加到同一窗口。您还应该覆盖无效窗口区域的请求,以通知您的OpenGL代码需要重新渲染包括屏幕缓冲区内容的窗口。的动作
序列:
并检查此:http://sciter.com/sciter-and-directx/ - 它是与我的Sciter引擎集成的HTML/CSS UI的DirectX窗口。目前我正在设计相同的,但为OpenGL。
我使用CEF作为浏览器没有问题,它可以通过这里所描述的消息路由器来完成。我只是不能捕获按钮在C++代码中按回。我正在寻找回调/事件。我不知道在哪里看。 – akaltar
看来CEF并没有提供订阅DOM事件的简单选项。因此,您需要在其中注册自己的本地函数,并在脚本中使用document.addEventListener(yourfunc)将其附加到DOM文档对象。您将需要使用ExecuteJavaScript函数来运行您的安装脚本。 。参见: https://bitbucket.org/chromiumembedded/cef/wiki/JavaScriptIntegration#markdown-header-using-js-callbacks –