将用户界面添加到图像查看器插件

时间:2012-07-24 01:05:40

标签: c++ firebreath

我有一个关于如何使用Firebreath开发图像查看器插件的一般性问题。为此,我想加入一个GUI框架,如wxwidget或Qt。 GUI将用于激活一些对话框,在顶部添加工具栏,或者通过右键单击图像打开上下文菜单。

据我所知,我有一个hwnd手柄,所以我可以画到窗户上。我也明白,我可以做出各种各样的事件,比如鼠标按钮点击或键盘敲击。但它让我失去了如何添加图形菜单,按钮等。我知道我可以在窗口周围使用html,但这不是我喜欢的路线。

例如,将用户界面脱机(在内存中)渲染到图像上然后在内部以某种方式跟踪状态是否有意义?

有人做过这样的事吗?或者任何人都可以给我一些关于如何完成添加用户界面的见解。

1 个答案:

答案 0 :(得分:1)

假设你只关心windows并假设你不介意使用窗口插件,这是最简单的(但没有HTML元素可以浮动插件),它应该与在任何其他设备中创建GUI没有什么不同Windows应用程序。

您将获得一个显示AttachedEvent的窗口;当DetachedEvent被触发时,你需要停止使用该窗口。许多人在父窗口中创建一个子窗口,并将其用于所有实际的实际代码,这使得使用其他抽象中的一个更容易,但基本上就是它的所有内容。我不知道你是如何用QT或wxwidget做的,但是你要创建一个你得到的HWND的子窗口,并让抽象为你做的事情。

至于它是否会在屏幕外渲染等等,我不知道;这完全取决于窗户系统。没有理由我知道你需要这样做,并且大多数事情只是直接绘制到HWND,但是有很多种方法可以做到。在我看来,你真正需要的是了解Windows中的绘图实际上是如何工作的。

我希望有帮助