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

Discussion :

Widget personnalisé & interface

  1. #1
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut Widget personnalisé & interface
    Bonjour,
    Je débute avec QT, donc je n'ai pas encore l'habitude de décomposer un programme (voir screen). Je m'explique : j'ai vu un programme et j'aimerais "copier" l'"architecture", c'est-à-dire la façon dont les données sont présentés.

    L'ennui je ne sais pas comment faire... Je sais comment créer un widget personnalisé, mais ici, je ne sais pas s'il est préférable d'allier des widgets déjà existants ou non...

    Merci d'avance pour vos conseils
    Images attachées Images attachées  

  2. #2
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut
    Salut,
    une piste serait de récupérer ce code sous forme de plugin
    Une fois fait, tu pourrais l'utiliser en tant que widget. Il faut du coup que le programme en question ai bien séparé la partie gui du core, ce qui normalement le cas la plupart du temps.

    Personnellement, tout mes widgets perso sont sous forme de plugin, utilisable donc dans Qt Designer. Je ré implémente tous les widgets qui m'intéresse pour rajouter du code.

    Je sais pas si ça peut t'aider, mais je ne vois que cette voie là...

    Cordialement.

  3. #3
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Les plugins peuvent être utiles dans ce cas-ci ? Le code ne serait pas torp important ?
    Je vais jeter un coup d'œil à cet classe dont je n'ai jamais entendu parler
    Tu peux me donner d'amples informations ?

    Merci par avance !

  4. #4
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut
    Citation Envoyé par mick009 Voir le message
    j'ai vu un programme et j'aimerais "copier" l'"architecture", c'est-à-dire la façon dont les données sont présentés.
    Si j'ai bien compris, tu veux recopier la façon dont les widgets sont affichés dans le programme? Ou alors j'ai pas compris l'histoire d'architecture...

    Si c'est le cas, il va falloir que tu récupère la partie GUI du programme, c.à.d toute la partie visuelle, création des layout, bouton etc etc...
    Que tu mettes ça dans un widget à toi, que tu le transforme en plugin (je te laisse regarder la doc pour ça, je pourrais t'aiguiller) et que tu l'utilise comme un widget.

    Ma vision de ton problème est peut être floutée par ce que je fais en ce moment, des plugins... Il existe peut être une solution meilleure et plus simple, les modos seront là pour me corriger.

  5. #5
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Non, ce que je veux, c'est créer mon propre widget...
    Si je recopie le widget en copiant les plugins (si j'ai bien compris ce que tu me disais) du programme, se serait illégal ^^.
    Mais ou sinon, je viens de trouver un site qui explique très bien l'utilité des QPlugin. C'est très intéressant, et j'utiliserais certainement cela dans mon programme, mais il faut quand même à un moment que je crée ces widgets...

  6. #6
    Membre expérimenté Avatar de cayou66
    Inscrit en
    Décembre 2008
    Messages
    286
    Détails du profil
    Informations personnelles :
    Âge : 37

    Informations forums :
    Inscription : Décembre 2008
    Messages : 286
    Par défaut
    Ah, le programme n'est pas sous GPL et ses cousins...
    De toute façon, si tu peux pas récupérer le code, et que tu veux faire la même gui que le programme en question, à part à la main, je vois pas...Je pourrais pas plus t'aider .

    Edit: tu veux peut être savoir comment représenter sous Qt la même architecture? Et tu vois pas trop comment faire?

  7. #7
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Oui, c'est exactement ça que je veux !!!!
    Je en savais pas comment bien l'exprimer !!
    Je ne sais pas quels widget je pourrais utiliser, ni lesquels créer....

  8. #8
    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
    Citation Envoyé par mick009 Voir le message
    Oui, c'est exactement ça que je veux !!!!
    Je en savais pas comment bien l'exprimer !!
    Je ne sais pas quels widget je pourrais utiliser, ni lesquels créer....
    c'est quoi au final?
    un traitement de text?

  9. #9
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Non, le même type de widget qu'il y a sur mon screen...
    C'est surtout pour afficher l'alignement de deux séquences...

    Au début j'ai pensé à des QTextEdit, auxquels je rajoutais à gauche des widgets que je crée. Mais pas terrible comme solution Surtout en ce qui concerne le défilement, les scrollbars. Imaginons qu'il y ait pleins de séquences à la suite...

    J'aimerais en gros une solution assez souple au niveau de QT et du code source.

  10. #10
    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
    regarde peut être ceci
    http://www.developpez.net/forums/d66...t/#post3922924
    il faut surement l'adapter.

    Pour avoir des bar de scroll, utilise un QScrollArea.

  11. #11
    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
    Qu'es ce que tu veut faire comme action?

  12. #12
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Pour le ReadOnly je connaissais déjà
    Par contre, je n'avais jamais que le QPlainTextEdit qui me conviendrait dans mon cas !!
    Par contre je n'ai pas vu (ni dans QTextEdit) comment récupérer le contenu d'une ligne en particulier...

    Et puis dans mon image, on voit qu'on peut scroller le champ de text, mais il faut aussi scroller le "contenu" de gauche. Comment je pourrais faire ça

    Edit : l'action que je veux faire, c'est la même chose que mon image : pouvoir afficher des séquences de chaînes, les scroller si trop grand, et pouvoir modifier son contenu selon la ligne où l'on se trouve ou non (bien que cette dernière option, je peux me débrouiller pour séparer la création de séquences, où l'on peut éditer, et la lecture, où l'on peut seulement lire et pas éditer).

  13. #13
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Salut,

    Voilà ce à quoi je pense:

    * un widget "timeline" pour représenter les index de la séquence en haut. Ce widget serait paramétrable par une borne min et une max. C'est apparemment les 2 seuls paramétres réellement essentiels;

    * Si les séquences ne sont pas éditables, une liste de QLabel, sinon une liste de QLineEdit (paramétrés par CSS si tu veux aussi reproduire le look);

    [Les 2 précédents éléments serait embarqués dans une QScrollArea comme indiqué par Mongaulois; ils seront mis à jour par détection des signaux de scroll]

    * Partie de gauche: aucune idée de ce que c'est ni comment ça fonctionne, difficile de dire, si ce n'est que c'est apparemment un assemblage de QPushButton + QLabel + <quelquechose> + QLabel. Quel est le rôle de ce <quelquechose> ?

    D'ailleurs, est-ce que le fait de scroller à l'extrême droite entraîne un "scrolling" sur la liste à l'extrême gauche ?

  14. #14
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Non, si l'on scrolle à l'extrême droite, la partie de gauche reste fixe.

    PS : j'avais également pensé à un assemblage de QLineEdit, qui serait plus facile à gérer, mais j'ai peur qu'on voit les bordures... Et pour le scroll je ne vois pas comment faire... (d'ailleurs un scroll apparaîtra sur chaque QLineEdit si le texte est trop long, bien que ce soit paramétrable mais plutôt lourde comme méthode !)

  15. #15
    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
    Citation Envoyé par mick009 Voir le message
    PS : j'avais également pensé à un assemblage de QLineEdit, qui serait plus facile à gérer, mais j'ai peur qu'on voit les bordures...
    dans l'exemple du lien que j'ai mis, j'ai viré les bordure.

    Après, si tu ne précise pas les actions que tu as besoin, difficile de t'aider plus. Il existe beaucoup de façon de faire

  16. #16
    Membre Expert

    Avatar de IrmatDen
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    1 727
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 1 727
    Par défaut
    Citation Envoyé par mick009 Voir le message
    PS : j'avais également pensé à un assemblage de QLineEdit, qui serait plus facile à gérer, mais j'ai peur qu'on voit les bordures... Et pour le scroll je ne vois pas comment faire... (d'ailleurs un scroll apparaîtra sur chaque QLineEdit si le texte est trop long, bien que ce soit paramétrable mais plutôt lourde comme méthode !)
    Fais ton propre widget alors. Il prend une chaîne, ainsi qu'un index de début, et il dessine jusqu'à arriver au bout de la zone d'affichage.

  17. #17
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Alors précisément les actions que j'ai besoin :
    - Assemblage de plusieurs chaînes : certaines chaînes pourront être édités d'autres non.
    - Lecture du contenu d'une chaîne précise : à tout moment je dois connaître le contenu de la chaîne
    - Affichage d'un scrollbar : autant horizontal (pour voir tout le contenu de la chaîne) que vertical (pour défiler les chaînes qu'il y a). Lorsque l'on scrolle horizontalement, la partie de gauche ne doit pas changer de place.

    Je crois que c'est tout ^^
    J'ai regardé et les QLineEdit ne mettent pas de scrollbar quand les textes sont longs !!
    Donc si je fais en sorte de positionner de façon fixe les QLineEdit sans bordure, ca fera un effet de QTextEdit ! Et en plus très simple à gérer !
    Cependant, je ne vois pas comment faire pour la scrollbar...

    Merci par avance pour votre patience

    Edit : Donc les questions seraient maintenant comment faire pour enlever proprement les bordures et comment faire pour mettre dans un scrollbar ?

  18. #18
    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
    Citation Envoyé par mick009 Voir le message
    Alors précisément les actions que j'ai besoin :
    - Assemblage de plusieurs chaînes : certaines chaînes pourront être édités d'autres non.
    - Lecture du contenu d'une chaîne précise : à tout moment je dois connaître le contenu de la chaîne
    Une solution avec des QLineEdit me semble pas trop mal.

    Citation Envoyé par mick009 Voir le message
    Donc les questions seraient maintenant comment faire pour enlever proprement les bordures
    regarde le lien que je t'ai mis.j'y utilise setFrame
    http://qt.developpez.com/doc/4.4/qlineedit/#frame-prop

    et comment faire pour mettre dans un scrollbar ?
    regarde QScrollarea
    http://qt.developpez.com/doc/4.4/qscrollarea/#details

  19. #19
    Membre confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juillet 2007
    Messages
    204
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juillet 2007
    Messages : 204
    Par défaut
    Ok, donc en gros, je vais créer un widget qui contient un assemblage de QLineEdit auquel je rajoute dans un QScrollArea.
    Après je crée un widget final qui contiendra le widget des QLineEdit + la partie gauche et j'insère le tout dans un QScrollArea.

    Je pense que ca devrait marcher...

  20. #20
    Membre chevronné Avatar de goodpz
    Profil pro
    Inscrit en
    Février 2007
    Messages
    475
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 475
    Par défaut
    Sais tu comment le programme initial est construit, quels controls sont utilisés ? Avec un programme du type spy++ (de microsoft) ou un équivalent gratuit, tu dois avoir la possibilité d'inspecter l'interface. Ce sera déjà une bonne indication à mon avis

+ Répondre à la discussion
Cette discussion est résolue.
Page 1 sur 2 12 DernièreDernière

Discussions similaires

  1. [Qt Designer] Inclusion d'un widget personnalisé dans Qt Designer
    Par MaximeL dans le forum Outils
    Réponses: 3
    Dernier message: 27/06/2011, 13h07
  2. [Qt Designer] Plug-in (widget personnalisé)
    Par bsebastian dans le forum Qt Creator
    Réponses: 0
    Dernier message: 15/09/2010, 14h05
  3. Réponses: 5
    Dernier message: 05/12/2008, 12h09
  4. [QT4] Tree Widget personnalisé
    Par Mic75 dans le forum Qt
    Réponses: 4
    Dernier message: 28/10/2008, 10h57

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