2011-05-04 71 views
0

所以這是我想要完成一個簡單的例子:嵌入Qt的窗口到Firefox,通過插件,在Linux上

使用QX11EmbedContainer和QX11EmbedWidget,我可以創建一個嵌入的小部件兩個獨立的應用程序一方轉換成另一方(容器< - 插件)的窗口。我想在Firefox中做同樣的事情,並將小部件嵌入到插件中。

因此,我創建了一個基本的插件,它只包含QX11EmbedContainer(從「簡單」的qtbrowserplugin示例開始),僅用於測試目的,另一個通用小部件。

的結果是通用的小部件顯示插件裏面就好了,但容器控件「啪啪」出一個單獨的窗口。

出現這種情況火狐,Chrome,甚至Konqueror中下。

所以,問題是 - 是否有可能嵌入外部Qt控件到一個插件?

回答

1

答案是肯定的,但Qt代碼是越野車,這就是爲什麼我不包括它 - 你不想也無妨。管理(與奇趣科技的工程師的幫助下)插入一個香草的QTextEdit控件。在嘗試輸入文本時,插件會崩潰,通常會使用Firefox。很明顯,將Qt對象直接嵌入到插件中是不行的。

我也試圖與mozplugger單獨啓動它,但是有它自己的問題 - 主要重點是正確追蹤,並會經常丟失,要求你重新啓動插件把它找回來。