Le module QtWebKitLe module QtWebkit fournit un moteur de navigation Web comme des classes pour afficher et interagir avec le contenu Web. Classes
QtWebKit fournit un moteur de navigateur Web qui rend facile l'intégration de contenu du World Wide Web dans des applications Qt, contenu qui peut être enrichi avec des contrôles natifs. QtWebKit fournit des fonctionnalités pour le rendu de documents HTML (HyperText Markup Language), XHTML (eXtended HyperText Markup Language) et SVG (Scalable Vector Graphics), stylisés à l'aide de CSS (Cascading Style Sheets) et scriptés avec JavaScript. Un pont entre l'environnement d'exécution JavaScript et le modèle objet de Qt rend possible le scriptage de QObject personnalisés. Pour plus de détails, voir le pont QtWebKit. L'intégration avec le module de réseau de Qt permet aux pages un chargement transparent depuis les serveurs Web, le système de fichiers local et même le système de ressources de Qt. En plus de fournir des fonctionnalités de rendu pur, les documents HTML peuvent être rendus complètement éditables par l'utilisateur grâce à l'utilisation de l'attribut contenteditable sur des éléments HTML. QtWebKit est basé sur le moteur open-source WebKit. Pour plus d'informations sur WebKit, visitez le site Web du projet. L'inclusion dans vos projetsPour inclure les définitions des classes du module, utilisez la directive suivante : #include <QtWebkit> Pour lier une application à ce module, ajoutez cette ligne à votre fichier qmake .pro : QT += webkit NotesNote : la génération du module QtWebKit avec des symboles de débogage est problématique sur de nombreuses plateformes, à cause de la taille du moteur WebKit. Nous recommandons la génération du module uniquement en mode release pour les plateformes embarquées. Actuellement, QtWebKit sera toujours compilé sans symbole de débogage lors de l'utilisation de gcc. Si vous avez besoin de changer cela, regardez les dernières lignes de src/3rdparty/webkit/WebCore/WebCore.pro. Note : les icônes de sites Web, aussi connues sous le nom de « FavIcons », sont pour le moment non supportées sous Windows. Nous prévoyons d'aborder le problème dans une sortie future. Note : le WebKit a des besoins minimums qui doivent être comblés sous les systèmes Linux embarqués. Voir le document Les nécessités de Qt pour Linux embarqués pour plus d'informations. ArchitectureLa méthode la plus simple pour afficher un contenu est de passer par le biais de la classe QWebView. En tant que widget, elle peut être embarquée à l'intérieur de vos formulaires ou dans une vue graphique et elle fournit des fonctions de commodité pour les téléchargements et les affichages de sites Web. QWebView *view = new QWebView(parent); view->load(QUrl("http://qt.nokia.com/")); view->show(); QWebView est utilisée pour voir les pages Web. Une instance de QWebView possède une QWebPage. QWebPage fournit un accès à la structure du document dans la page, décrivant des caractéristiques telles que des frames, l'historique de navigation, et les piles d'annulation/rétablissement pour les contenus éditables. Les documents HTML peuvent être nichés en utilisant des frames dans des ensembles de frames. Une frame individuelle en HTML est représentée en utilisant la classe QWebFrame. Cette classe inclut un pont vers l'objet de fenêtre JavaScript et peut être peinte en utilisant un QPainter. Chaque QWebPage détient un objet de QWebFrame en tant que frame principale et celle-ci peut contenir plusieurs frames filles. Il est possible d'accéder aux éléments individuels d'un document HTML par le biais d'interfaces JavaScript DOM depuis l'intérieur d'une page Web. L'équivalent de cette API dans QtWebKit est représenté par QWebElement. Les objets de QWebElement sont obtenus en utilisant les fonctions findAllElements() et findFirstElement() de QWebFrame avec un sélectionneur de requêtes CSS. Les caractéristiques communes des navigateurs Web, les paramètres par défaut et les autres propriétés peuvent être configurés par le biais de la classe QWebSettings. Il est possible de fournir des valeurs par défaut pour toutes les instances de QWebPage à travers les paramètres par défaut. Les attributs individuels peuvent être outrepassés par l'objet de réglage, spécifique à la page. Support du plug-in NetscapeNote : le support du plug-in Netscape est uniquement disponible sous les plateformes bureautiques. Puisque le WebKit supporte l'API du plug-in Netscape, les applications Qt peuvent afficher des pages Web qui embarquent des plug-ins communs aux plateformes pour lesquelles ces plug-ins sont disponibles. Pour activer le support d'un plug-in, l'utilisateur doit avoir les fichiers binaires appropriés installés et l'attribut QWebSettings::PluginsEnabled autorisé pour l'application. Les emplacements suivants sont consultés pour trouver les plug-ins :
Windows
Mac OS X
Informations de licenceCeci est un snapshot du port Qt de WebKit. Les informations exactes de version peuvent être trouvées dans le fichier src/3rdparty/webkit/VERSION fourni avec Qt. Les utilisateurs des éditions commerciales de Qt qui souhaitent distribuer des applications qui utilisent le module QtWebkit doivent prendre connaissance de leurs obligations sous la GNU Library General Public License (LGPL). Les développeurs utilisant l'édition Open Source de Qt peuvent choisir de redistribuer le module sous la version appropriée de la GNU LGPL. WebKit is licensed under the GNU Library General Public License. Individual contributor names and copyright dates can be found inline in the code. RemerciementsMerci à Thibaut Cuvelier et Louis du Verdier pour la traduction ainsi qu'à Jonathan Courtois et Maxime Gault pour leur relecture ! |
Cette page est une traduction d'une page de la documentation de Qt, écrite par Nokia Corporation and/or its subsidiary(-ies). Les éventuels problèmes résultant d'une mauvaise traduction ne sont pas imputables à Nokia. | Qt 4.7 | |
Copyright © 2024 Developpez LLC. Tous droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon, vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts. Cette page est déposée à la SACD. | ||
Vous avez déniché une erreur ? Un bug ? Une redirection cassée ? Ou tout autre problème, quel qu'il soit ? Ou bien vous désirez participer à ce projet de traduction ? N'hésitez pas à nous contacter ou par MP ! |