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

C++Builder Discussion :

Séparateur dans une combobox


Sujet :

C++Builder

  1. #1
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut Séparateur dans une combobox
    Bonjour,

    J'ai déjà vu dans des combobox des séparateurs comme on peut en trouver dans des menus... Et je me demande comment je peux les réaliser sans faire
    Combobox1->Items->Add("----------------------");

    Il y a pas plus jolie ?

    Surtout pour aller jusqu'au bout de la combobox....

    D'avance Merci

  2. #2
    Membre émérite
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Par défaut
    Salut !

    Citation Envoyé par Spike_Spiegel
    Il y a pas plus jolie ?
    Genre ?

    parceque je trouve très beau la méthode Add

    A+

  3. #3
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut
    Il est vrai que la méthode Add() est très belle ....

    Je ne voulais en aucun cas blesser ces adorateurs

    Mais quand je parle de joliesse, je parle dans le code

    Dans le meme genre prenons un menu : Pour faire un séparateur, il faut ajouter un item au menu et puis mettre dans son caption -, et juste -, et hop on a un joli séparateur qui va d'un bout à l'autre du menu

    Par Contre pour les combobox on fait :

    Combobox1->Items->Add("----------------------"); avec bien sur le nombre exact de - pour faire le séparateur d'un bout à l'autre de la combo....

    Bien sur vous l'aurez remarqué ceci n'est pas une question existencielle... Si il y avait un concours de question inintéressante, elle pourrait etre sur le poduim ( Il y pas de concours j'espére !). C'est une question juste pour savoir si il y a pas plus simple qu'a compter le nombre de tirets à mettre !

    Interruption13h, je te dis un grand merci pour essayer de m'aider face à ce dilemme pas franchement problématique ni primordial.

    A+

  4. #4
    Membre émérite
    Avatar de Interruption13h
    Inscrit en
    Août 2005
    Messages
    603
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 603
    Par défaut Design-Time
    Salut !

    Ha non, à ma connaissance y a pas pour ComboBox.

    Bonne continuation !

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2006
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 80
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    AnsiString Sep="---------------";
    ComboBox2->Items->Add(Sep);
    c'est pas beau ca!?

  6. #6
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut
    Très joli !

    Mais le problème n'est pas là ! Si par exemple ma combobox est aussi longue que mon écran... on a donc
    AnsiString Sep = "-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------";


    C'est ça qui n'est pas joli !

  7. #7
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Salut Spike_Spiegel:
    Peut etre en composant ta chaine dans une boucle.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    AnsiString chaine;
    for (int x = 0; x <= 10; x++)
    {
    chaine+= "-";
    }
    Tu peut changer ton separateur par programme ainsi que sa longueur

  8. #8
    Rédacteur/Modérateur
    Avatar de ero-sennin
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2005
    Messages
    2 965
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2005
    Messages : 2 965
    Par défaut
    Salut à tous,

    Je viens apporter une petite remarque ...

    Logiquement, on insère les '------' pour séparer 2 groupes items.
    On a donc un truc de ce genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Mon premier item
    Mon Second item
    ----------------
    Mon Troisième item
    Mon Dernier item
    La petite chose à ne pas oublier, c'est qu'il faut prendre en compte la longueur du mot le plus long qui sera inséré dans le Combobox afin d'avoir un visuel agréable.

    Donc, on risque de retravailler sur les '---' une fois le combo complément remplis.

    Vous me suivez toujours ?

    [EDIT]
    Heu, j'y suis allé un peu fort là, j'adaptai les '---' en fonction des mots et non en fonction de la longueur du Combobox!

  9. #9
    Membre habitué
    Profil pro
    Étudiant
    Inscrit en
    Juin 2007
    Messages
    13
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2007
    Messages : 13
    Par défaut
    la boucle for me plait mais il faudrait connaitre la taille en pixel d'un caractère pour savoir combien de tirets on peut mettre dans toute la longueur de la combo !

    AnsiString chaine;
    int nombreTirets = (combo->Width / ( taille d'un caractère en pixels))
    for(int x=0; x < nombreTirets ;x++)
    {
    chaine+= "-";
    }

    Ca commence à me plaire mais faut faire gaffe que la division tombe pile...
    Parce que déjà il y aura erreur mais en plus le trait ne touchera pas un bord...

    Bien sur si vous trouver plus simple , je suis preneur,

    Amis programmeurs, D'avance Merci

  10. #10
    Rédacteur
    Avatar de blondelle
    Homme Profil pro
    Inscrit en
    Mars 2006
    Messages
    2 738
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mars 2006
    Messages : 2 738
    Par défaut
    Tu peut connaitre la taille de la police, la taille du Memo
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    int largFont = Memo1->Font->Size;
    int largMemo = Memo1->Width;
    Il y a une formule qui donne le nombre de pixels en fonction de la taille de la fonte si je la retrouve je te la passe

Discussions similaires

  1. Multi-selection dans une ComboBox ?
    Par Moloko dans le forum MFC
    Réponses: 5
    Dernier message: 07/07/2021, 17h26
  2. Comment afficher dans une combobox les driver des imprimante
    Par lassad dans le forum Composants VCL
    Réponses: 3
    Dernier message: 18/10/2005, 08h56
  3. ajouter une valeur dans une combobox
    Par decour dans le forum Access
    Réponses: 1
    Dernier message: 17/10/2005, 10h58
  4. Réponses: 2
    Dernier message: 14/09/2005, 13h39
  5. [VB+IE] Comment sélectionner dans une combobox d'une page IE
    Par danje dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 03/05/2005, 09h10

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