IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Qt Quick Discussion :

Nouveautés de Qt Quick dans Qt 5.1


Sujet :

Qt Quick

  1. #1
    Responsable Qt & Livres


    Avatar de dourouc05
    Homme Profil pro
    Ingénieur de recherche
    Inscrit en
    Août 2008
    Messages
    26 619
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Ingénieur de recherche
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2008
    Messages : 26 619
    Points : 188 597
    Points
    188 597
    Par défaut Nouveautés de Qt Quick dans Qt 5.1
    Depuis la version 2.0 de Qt Quick distribuée avec Qt 5.0, bien des choses ont été ajoutées dans l’environnement de développement déclaratif d’interfaces. Notamment, les Qt Quick Components for Desktop, déjà rendus compatibles avec Qt 5.0, feront partie officiellement de Qt Quick.

    Dispositions

    Les méthodes précédentes de positionnement des contrôles (soit les ancres et un positionnement à la main) fournissaient déjà une certaine flexibilité. Cependant, dès que l’interface devient redimensionnable, ces outils montrent leurs limites. Le module QtQuick.Layouts vient en complément dans ces situations pour construire des dispositions plus flexibles encore.

    Voir aussi l’article Présentation des mises en page avec Qt Quick.



    Contrôles

    Les contrôles Qt Quick sont les équivalents directs des widgets traditionnels. Les versions précédentes de Qt Quick ne fournissaient que des primitives de relativement bas niveau, sans boutons, menus ou autres barres de progression (il fallait les coder soi-même ou utiliser un add-on). Désormais, Qt Quick vient avec QtQuick.Controls, un module officiellement supporté qui comble ce manque.



    Vues

    En plus de ces contrôles, une série de vues est également disponible. Par exemple, SplitView supporte des redimensionnements verticaux ou horizontaux entre des items d’une vue, tandis que ScrollView complémente Flickable avec une barre de défilement dans son cadre.




    ListView était très utile pour afficher des listes, mais nettement moins pour un tableau d’items, très fréquemment utilisé. TableView vient combler ce manque avec une apparence native, en plus de laisser l’utilisateur réarranger les colonnes et sélectionner des lignes. De plus, ces vues sont personnalisables, afin de laisser la possibilité de créer une application à l’apparence entièrement unique.



    Ces composants ont été étudiés pour bien fonctionner sur toutes les plateformes (cependant, il va sans dire que, pour qu’une application complète fonctionne bien sur une plateforme plus particulière telle qu’une tablette ou un smartphone, il faudra l’adapter). Sur ces périphériques mobiles, StackView est plus adapté, en fournissant une navigation en cascade à travers une série de pages.



    Gestion des plateformes

    Le problème des applications Qt Quick était l’impossibilité de déterminer la plateforme d’exécution facilement, c’est pourquoi cette nouvelle version apporte la propriété globale Qt.platform.os, qui donne accès directement à la plateforme sous-jacente.

    Boîtes de dialogue standard

    QtQuick.Dialogs propose quelques boîtes de dialogue standard (sélection de couleur ou de fichier, pour le moment), qui appelleront généralement directement les boîtes de dialogue natives.

    Gestion des fenêtres

    Qt 5.0 avait apporté le support des fenêtres, maintenant amélioré. Définir une fenêtre dans une autre la rendra modale, la fenêtre fille devrait être centrée dans la fenêtre parente. Un signal de fermeture est également disponible pour répondre correctement aux demandes de fermeture.

    Exposition du texte au code C++

    Le composant TextEdit avait un grand problème : il ne pouvait qu’afficher du texte mis en forme, alors que des applications Qt plus complexes ont besoin de complétion automatique, de coloration syntaxique, de support de l’impression, ce qui requiert un plug-in C++, très souvent. Avec cette exposition du texte aux plug-ins C++, il a été possible de réimplémenter l’exemple TextEdit avec Qt Quick.



    Toutes ces nouveautés montrent la dynamique derrière Qt Quick, la plateforme devient mature et utilisable pour bien d’autres types d’applications.

    Billet original
    Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.

    Créer des applications graphiques en Python avec PyQt5
    Créer des applications avec Qt 5.

    Pas de question d'ordre technique par MP !

  2. #2
    Membre expert Avatar de air-dex
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    1 655
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 1 655
    Points : 3 783
    Points
    3 783
    Par défaut
    Citation Envoyé par dourouc05 Voir le message
    Toutes ces nouveautés montrent la dynamique derrière Qt Quick, la plateforme devient mature et utilisable pour bien d’autres types d’applications.
    Tout est résumé dans cette phrase. C'est bien d'avoir quelque chose de plus professionnel pour Qt Quick. Ca améliore également le multi-plateformes avec un même nom pour les composants de base quelque soit la plateforme. Pas besoin de tout réécrire pour une plateforme donnée à cause de ça. D'ailleurs si Ubuntu Touch et Sailfish OS pouvaient participer à cet effort en renommant Ubuntu.Components et Silica, ce serait pas mal.

    Il ne reste plus grand chose à Qt Quick pour être au poil.
    • Résoudre ses problèmes de typage. Entre le typage fort de QML et le typage faible de JavaScript, il y a de quoi s'arracher les cheveux.
    • Il y a aussi les modèles de listes qui sont à mon avis plutôt mal foutus (ou alors c'est moi qui ne sait pas faire).
    • Une meilleure prise en compte du cross plateforme. Ca permettrait de faire 2-3 optimisations pour un OS donné sans avoir à réécrire le code pour la plateforme en question.
    "Ils ne savaient pas que c'était impossible alors ils l'ont fait." Mark Twain

    Mon client Twitter Qt cross-platform Windows et Linux. (en cours de développement).

Discussions similaires

  1. Nouveautés sur les TAGs dans les sous-forums et le forum principal
    Par FrancoisJehl dans le forum Microsoft BI
    Réponses: 0
    Dernier message: 30/01/2012, 17h12
  2. Réponses: 4
    Dernier message: 06/10/2006, 15h24
  3. Très long texte dans Quick Report - Comment faire ?
    Par delphi+ dans le forum Composants VCL
    Réponses: 2
    Dernier message: 21/08/2005, 22h18

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo