2014-06-24 20 views
5

Dokumentacja (przynajmniej w języku PyQt) dla QWebView mówi: "Klasa QWebView zawiera widget służący do przeglądania i edytowania dokumentów internetowych", natomiast QWebPage mówi: "Klasa QWebPage udostępnia obiekt do przeglądania i edytuj dokumenty internetowe ". Biorąc pod uwagę, że te oznaczać to samo:QWebView vs QWebPage

  • Czy istnieje historyczny powód, dla którego te 2 klasy ewoluowały?
  • Czy można użyć lepiej niż innego w jakiejkolwiek szczególnej sytuacji?

(Wynika to z faktu realizacji używam biblioteki javascript osadzone w aplikacji pyqt; obecnie używam QWebView, ale tylko QWebPage ma metodę catching javascript errors, więc rozważał, czy warto było tłumaczenia mój kod podklasy QwebPage zamiast)

Odpowiedz

6

z documentation mówi

QWebPage trzyma ramę główną odpowiedzialną za zawartość stron internetowych, ustawienia, historię nawigacja powiązań i działań . Ta klasa może być używana wraz z QWebFrame, aby zapewnić funkcjonalność, taką jak QWebView w środowisku bez widgetów o rozmiarze .

także QWebView dziedziczy z QWidget podczas QWebPage nie.

Domyślam się, że QWebView to tylko widget, który może załadować i wyświetlić HTML, podczas gdy QWebPage może być używany z widokiem lub bez widoku. Również QWebPage ma więcej funkcji, takich jak ustawienia lub historii nagivation.

Obecnie środowisko bez widgetów to na przykład QtCore.QCoreApplication.

Wygląda na to, że używałbyś na przykład QWebPage podczas pisania aplikacji do zeskanowania treści WWW, gdy wolałbyś QWebView, gdy chcesz tylko załadować i wyświetlić zawartość internetową w aplikacji. QWebView bycie widżetem zawsze będzie chciał coś wyświetlić.

Historycznie oba zostały wprowadzone z Qt 4.4.

Pytania otwarte są podzielone wewnętrznie i czy jest coś, czego nie można zrobić lub nie można naśladować za pomocą QWebView, które można wykonać za pomocą QWebPage?

Powiązane problemy