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 Discussion :

Question portabilité de Qt


Sujet :

Qt

  1. #1
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2005
    Messages : 349
    Par défaut Question portabilité de Qt
    Bonjour,

    J'utilise Qt depuis quelques mois déjà, et pour la première fois j'ai décidé d'utiliser QtDesigner pour faire mes widgets. J'ai remarqué que dans le code généré, les widgets étaient définis en position absolue, avec des setGeometry par exemple. Je m'interroge donc sur la portabilité des composants graphiques, on peut imaginer par exemple qu'un QSpinBox sur Mac nécessite une plus grande taille que sous Windows ou Linux? Ca ne pose pas problème de définir la taille et la position des widgets précisément?

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    Salut.
    Utilise tu les layout??

  3. #3
    Membre expérimenté Avatar de MacPro
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 367
    Par défaut
    Salut, moi je passe (du moins je tente) de Mac à Windows. Je n'ai pas de problème. LE truc, c'est qu'il faut utiliser les layout, du coup, la position des Widgets est recalculée. Mais dans l'absolu, ça ne gêne pas (il doit y avoir deux trois pixels de différents par ci par là, rien de méchant). Si t'as un doute, envoie moi un .ui, moi je l'ouvre sous Qt Designer Mac et je te fais une capture, tu pourras comparer.

  4. #4
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Citation Envoyé par Mongaulois Voir le message
    Salut.
    Utilise tu les layout??
    C'est en effet le seul moyen d'avoir une application qui garde une allure correcte lorsque tu la redimensionnes ou que tu tu l'exécutes dans des conditions (graphiques) différentes.

    Il est question dans la doc de Qt de "Layout Policy" si mes souvenirs sont bons. Cela t'apprendra à concevoir une application qui se comporte de telle ou telle manière si on la redimensionne ou quoi

  5. #5
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2005
    Messages : 349
    Par défaut
    Justement j'utilisais les layouts jusqu'à maintenant, et c'est en essayant QtDesigner que j'ai remarqué qu'il génère du code avec des setGeometry. J'avoue que j'ai pas essayé très longtemps, il est possible de n'utiliser que des layout avec QtDesigner?

  6. #6
    Alp
    Alp est déconnecté
    Expert confirmé

    Avatar de Alp
    Homme Profil pro
    Inscrit en
    Juin 2005
    Messages
    8 575
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Juin 2005
    Messages : 8 575
    Par défaut
    Oui. Il suffit de glisser/déposer tes layouts sur ton UI, ils vont se placer et se redimensionner tous seuls. Par contre, c'est une autre façon de penser ses UI les layouts.

  7. #7
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2005
    Messages : 349
    Par défaut
    Merci pour vos réponses, ça va effectivement mieux avec les layouts

    J'ai quand même encore une question concernant la taille des widgets. J'ai par exemple un QLineEdit avec maximum 3 caractères, et un autre sur la même ligne avec maximum 16 caractères. Si je les mets dans un horizontal layout, ils auront la même taille, et je veux évidemment que celui de 3 caractères soit plus étroit. Je veux éviter d'utiliser directement les attributs size, alors comment faire? Utiliser un grid layout et faire pour que le plus long utilise plus de colonnes?

  8. #8
    Membre expérimenté Avatar de MacPro
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 367
    Par défaut
    euh, les layout c'est assez aleatoire, surtout lorsque tu rajoutes des spacers de partout. Le mieux, c'est de préciser la taille maximale ... surtout si tu la connais d'avance.

  9. #9
    Membre chevronné
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    349
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : Suisse

    Informations forums :
    Inscription : Novembre 2005
    Messages : 349
    Par défaut
    Pour les spacers, le problème est une nouvelle fois qu'il faut indiquer la taille en pixels. Je pourrais les utiliser pour un simple espacement entre composant (genre taille de 10 pixels pour séparer deux composants côte-à-côte).

    J'utilise des addStretch(0) dans mes layout fils, ça me permet par exemple d'éviter qu'un bouton seul sur une ligne occupe toute la largeur du widget.

    Pour la taille maximum de mon QLineEdit, je ne peux pas la connaître (en pixels), mais bon j'arrive quand même à faire des widgets qui ont de la gueule, c'est le principal, je vais pas chippoter si sur certaines plate-formes il y a un composant qui fait 5 pixels de trop.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Choix language + question portabilité.
    Par nico410 dans le forum Langages de programmation
    Réponses: 4
    Dernier message: 02/04/2008, 20h24
  2. Réponses: 1
    Dernier message: 22/02/2008, 13h22
  3. [WebService] Question de portabilité
    Par shaun_the_sheep dans le forum Services Web
    Réponses: 1
    Dernier message: 19/10/2006, 16h42
  4. [VB6] connexion à une base access : question portabilité
    Par toome dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 21/05/2006, 18h51
  5. question de portabilité
    Par foufi5 dans le forum Autres Logiciels
    Réponses: 3
    Dernier message: 30/01/2006, 13h49

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