2011-07-19 75 views
-1

我正在使用QTextBrowser來顯示靜態HTML文檔。我想在這些文檔中嵌入表單,但我似乎無法弄清楚如何使用python或pyqt處理這些表單。正在建設的應用程序是一個桌面應用程序,所以QWebView不是一個很好的選擇。如何使用pyqt處理html表單?

回答

-1

考慮在你的桌面應用程序中實現一個Python服務器(例如閱讀有關SimpleHTTPServer模塊here)。

你可以「服務」的靜態HTML或包含您的應用程序的網頁瀏覽器的形式(從請求的「localhost/...」的頁面)和接收GET或POST請求。

+0

太感謝你了,我很感激。如果你不介意的話,我會很感激的一個例子。如果你不介意的話,我也想和你分享我的作品,以供你評論和指導。我幾乎沒有應用程序開發經驗。再一次感謝你。 – ikdme

+0

我7月1日回答您的[其他問題](http://stackoverflow.com/questions/6553944/how-do-i-display-the-data-contents-of-my-xml-file-using-pyqt4) ,也許它有幫助。在堆棧溢出時,您可以通過upvoting或接受您喜歡的答案來「感謝」(單擊答案左側0上方的三角形)。 – Remi

+0

如果你想要一個桌面應用程序或一個網絡應用程序,也許你應該思考和調和。如果你使用桌面應用程序,那麼使用pyqt(或者wxpython,不管你喜歡什麼)附帶的小部件,而不是使用html表單。當然,對於一個Web應用程序(您可以在任何桌面上使用任何瀏覽器完全訪問),您只能使用HTML表單。 – Remi

0

考慮你是否需要做的HTML。如果你不這樣做,它會容易得多。如果可能的話,使用標準的Qt表單組件。

如果由於某種原因您需要在HTML表單的HTML文檔中做到這一點,您將無法使用QTextBrowser做到這一點。請注意,QTextBrowser具有有限的功能;它不是一個完整的瀏覽器,而只是使用相當先進的富文本渲染器,它支持HTML中大多數簡單顯示所需的東西。它不支持的兩件重要事情是JavaScript和表單。 QWebView和QtWebkit包中的其他內容正在使用帶有所有修剪(WebKit)的完整HTML渲染器,因此您可以使用來自它們的表單並獲得更多交互。你將能夠給它一個本地路徑(或使用Qt資源),所以它是「桌面應用程序」並不重要,然後你可以通過JavaScript將頁面中的表單數據提供給你的應用程序。但是你已經扔掉了很多已經爲你完成的工作。

如果可能可以,只是使用Qt的標準部件建立自己的形式。

+0

非常感謝。老實說,我想過使用QWebView。但事情是,我對此一無所知。我對編程和PyQt很陌生。我甚至發現QTextBrowser很難使用。如果你不介意幫助我,我想和你討論我的申請,告訴你我走了多遠。再次感謝你 – ikdme

+0

@ikdme:用更多信息更新你的問題。 –

0

Form Extractor Example 在[pythondir] \ Lib \ site-packages \ PyQt4 \ examples \ webkit \ formextractor中查看pythonic版本。這應該與PyQt的安裝