我想在我純粹的c windows GUI應用程序中嵌入qtwebkit。如何在非qt窗口應用程序中嵌入qtwebkit?
是否有任何示例,如何做到這一點的代碼示例,或者它是不可能的?我知道在QT應用程序中很容易做到,但我想保持我的開發(使用免費的C編譯器編譯)。
(谷歌搜索幾天沒有任何運氣)。
我想在我純粹的c windows GUI應用程序中嵌入qtwebkit。如何在非qt窗口應用程序中嵌入qtwebkit?
是否有任何示例,如何做到這一點的代碼示例,或者它是不可能的?我知道在QT應用程序中很容易做到,但我想保持我的開發(使用免費的C編譯器編譯)。
(谷歌搜索幾天沒有任何運氣)。
是的...... wxwidgets絕對比QT好(在我看來)。 wxWebConnect嵌入gecko瀏覽器控件非常好。
絕對不嘗試http://www.kirix.com/labs/wxwebconnect.html
附:如果你想知道我在做什麼項目,請在http://www.viewerforphp.sourceforge.net(一個運行php頁面的程序,而不使用uniserver,WAMP等服務器軟件包)進行檢查。
從QT4開始,所有Widget都需要初始化並運行 QApplication對象 - 調度OS事件和保持QT小部件運行所需的AND QT事件。
看起來可能會創建一個自定義的子類QApplication,它將被實例化(爲了QWebKit或其他小部件),以便單例存在,然後從應用程序消息循環中調用它 - 或者即使只是一個計時器發送到您的窗口 - 並獲得它派遣其排隊的任何QEvent。
我沒有帶試過,但我也有類似的需要在現有的Windows應用程序使用的WebKit,它似乎是QWebKit,或this thing
構建自己使用ActiveQt可ActiveX控件。這很容易。然後嵌入。 Qt甚至知道如何將IDispatch對象拉入到它的元對象系統中,這又可以讓你將它們暴露給你的javascript上下文。這真的很光滑。
我在我目前的項目中正是這樣做的。我會盡力開源,以挽救其他人的工作,但這不太可能。
我很確定你說使用activeQT你可以嵌入Microsoft Internet Explorer?對?不用了,謝謝。這意味着IE必須安裝在用戶計算機上,或者用戶必須安裝它。使用wxWebConnect你分發整個壁虎包,它不需要安裝! – sonu 2010-02-10 02:46:24
你可以考慮http://www.twotoasts.de/index.php?/pages/midori_summary.html 它是純C的網頁瀏覽器,你有什麼使用的WebKit(不QtWebKit的) 也許,它可能是有益的你)
是的,這相當不錯,但它沒有像wxWebConnect控件那樣穩定。例如,嘗試在midori中打開Gmail或YouTube。 – sonu 2010-02-19 09:41:21
以及多數民衆贊成我有點試圖做...有看看這個:http://www.qtforum.org/article/31506/embed-qwebview-into-win32-window-whole-window.html?highlight=(注意我不是一個好的程序員:-( – sonu 2010-02-04 20:51:53
你的問題在QWinWidget沒有setCentralWidget方法的情況下,QWinWidget的唯一好處是作爲另一個Widget的父節點 因此,QWinWidget * win = new QWinWidget(parent); QWebView * web =新的QWebView(win); sho üld讓你的webview託管在一個窗口窗口 – 2010-02-04 21:48:08
好吧,我做到了,但現在的問題是,因爲我正在創建一個小部件,我需要在DLL中創建一個QApplication實例。問題在於它阻止了Windows主機應用程序工作原因QApplication啓動它自己的消息循環。任何幫助?謝謝。 – sonu 2010-02-08 02:51:26