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 :

ScrollBar Horizontale ListBox


Sujet :

C++Builder

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 28
    Par défaut ScrollBar Horizontale ListBox
    Bonjour,

    Sous C++ Builder, je rencontre un problème au niveau du composant ListBox.

    Si un item de ma liste est une chaîne de caractères de longueur importante (dépassant en fait la propriété "Width" de ma ListBox), celle ci est rognée, car je ne trouve aucun moyen de mettre une scrollbar horizontale ...

    Si quelqu'un a déja rencontré ce problème et a une piste/solution quelconque, je lui en serais redevable

    D'avance merci

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    63
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2006
    Messages : 63
    Par défaut
    Bonjour Ju2Pom,

    Si tu as un article codé sur 50 caractères et qu'un caractère est large de 8 pixels alors on a une étendue de largeur 50*8 soit 400 pixels. Pour forcer alors l'usage d'une barre de défilement horizontale, écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
     
    ListBox1 -> Style |= WS_HSCROLL;
    ListBox1 -> Perform(LB_SETHORIZONTALEXTENT, 60*8,0);
    ...
    Bon courage...

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 28
    Par défaut
    Bonjour Lenrok,

    Tout d'abord merci pour ton idée

    A vrai dire, je ne l'ai pas implémenté, entre temps j'ai trouvé une autre solution (d'ailleurs je sais pas quelle est la meilleure solution, mais en tout cas celle que j'ai mise en place fonctionne comme je le souhaite ).

    Pour ceux que ça intérressent, j'ai utilisé la propriété "Scroll Width" de la ListBox.
    Lorsque on affecte à cette propriété une valeur SUPERIEURE à la Width client de la ListBox, un scroll horizontal apparaît (la "portée" horizontale du scroll dépend de l'importance de cette valeur).

    J'ai donc crée une fonction qui accepte en paramètre une TStringList (contenant tout les items de ma ListBox) et qui me renvoit un entier, correspondant à la largeur de la PLUS GRANDE chaîne de caractère (non pas en length, mais en pixels bien sûr ...) contenue dans ma TStringList.

    Ensuite, je mets à jour à souhait, la propriété Scroll Width de ma ListBox en y affectant cet entier !

    Quand j'ajoute, ou retire un élément de ma liste, je rappelle cette fonction, pour recalculer cette largeur maxi, et ainsi tenir à jour le scroll horizontal de la liste !



    @+

  4. #4
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    excellent, j'ai longtemps cherché une solution...

    j'adopte

    +1

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

Discussions similaires

  1. [XL-2003] ListBox et ScrollBar horizontale Indesirable
    Par dev_php51 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 01/04/2011, 12h17
  2. Forcer une scrollbar horizontale à se déplacer
    Par MiJack dans le forum Composants VCL
    Réponses: 10
    Dernier message: 09/01/2008, 14h37
  3. Listbox et scrollbar horizontale
    Par sscouby dans le forum Général VBA
    Réponses: 5
    Dernier message: 06/11/2007, 12h07
  4. synchroniser 2 scrollbar horizontale sur 2 listbox
    Par oddis dans le forum VB 6 et antérieur
    Réponses: 7
    Dernier message: 29/11/2006, 14h42
  5. Tester si la scrollbar horizontale est affichée.
    Par Etanne dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 19/09/2005, 14h01

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