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

Composants VCL Delphi Discussion :

Position dans une ListBox


Sujet :

Composants VCL Delphi

  1. #1
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Points : 1 199
    Points
    1 199
    Par défaut Position dans une ListBox
    Hello

    Dans mon application, je fais apparaitre un panel sous l'item cliqué.
    J'affecte donc une valeur à Panel.Top calculée sur base de ListBox.ItemIndex et ListBox. StreetListBox.ItemHeight.
    Tant que le nombre d'items ne dépasse pas la hauteur de la liste, pas de problème.
    Mais si n'est pas le cas, je pense que l'on ne peut pas connaitre la position de l'item sélectionné dans la liste de manière telle que la position de mon panel soit modifiée à toute action sur la barre de défilement.

    Cela me ravirait si quelqu'un me disait que je me trompe.

    Alors merci d'avance pour vos réflexions.

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    392
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2005
    Messages : 392
    Points : 635
    Points
    635
    Par défaut
    tu peux utiliser la propriété TopIndex pour connaitre l'index du premier élément affiché avec cela tu devrais pouvoir calculer la position de ton panel, enfin si j'ai bien compris ce que tu veux faire

  3. #3
    Membre éprouvé Avatar de defluc
    Homme Profil pro
    Architecte
    Inscrit en
    Mai 2002
    Messages
    1 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 74
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 383
    Points : 1 199
    Points
    1 199
    Par défaut
    Quand on utilise rarement une fonction on en oublie son existence.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        IdxPosition := StreetListBox.ItemIndex - StreetListBox.TopIndex;
        DblPanel.Top := StreetListBox.Top + StreetListBox.ItemHeight * IdxPosition +
                        +  StreetListBox.ItemHeight + 4;
        if DblPanel.Top + DblPanel.Height > StreetForm.Height then
           DblPanel.Top := IdxPosition * StreetListBox.ItemHeight - DblPanel.Height;
    Un grand merci.

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

Discussions similaires

  1. Réponses: 13
    Dernier message: 12/02/2015, 12h57
  2. Clique droit dans une ListBox
    Par LoicH dans le forum C++Builder
    Réponses: 5
    Dernier message: 07/02/2005, 22h50
  3. [debutant] supprimer elements dans une listbox
    Par F.F. dans le forum C++Builder
    Réponses: 8
    Dernier message: 02/07/2004, 11h38
  4. [WIN32]tabulation dans une listbox
    Par stoluup dans le forum MFC
    Réponses: 2
    Dernier message: 09/06/2004, 10h11
  5. Icône a coté du texte dans une ListBox
    Par joce3000 dans le forum C++Builder
    Réponses: 6
    Dernier message: 05/12/2003, 02h25

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