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 :

Problème de positionnement du scrolbar dans un StringGrid


Sujet :

C++Builder

  1. #1
    Membre régulier Avatar de marcootz
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 159
    Points : 104
    Points
    104
    Par défaut Problème de positionnement du scrolbar dans un StringGrid
    Salut à tous,

    J'utilise des TStringGrid avec un beaucoup de lignes. Chaque minutes une ligne est ajouté a ma grid et j'aimerais que l'ascenseur soit toujours positionné en bas, de manière à ce qu'on voit toujours à l'écran la dernière ligne.
    Je pense qu'il est possible de faire ça mais je ne trouve rien ni sur le forum ni sur la FAQ. Quelqu'un connait-il une solution ?

    Merci d'avance

  2. #2
    Responsable Magazine

    Avatar de pottiez
    Homme Profil pro
    Développeur C++
    Inscrit en
    Novembre 2005
    Messages
    7 152
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur C++
    Secteur : Industrie

    Informations forums :
    Inscription : Novembre 2005
    Messages : 7 152
    Points : 22 087
    Points
    22 087
    Par défaut
    Modifie la case sélectionné juste après l'ajout de ta ligne, pour cela regarde la propriété Selection de ton StringGrid

  3. #3
    Membre régulier Avatar de marcootz
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 159
    Points : 104
    Points
    104
    Par défaut
    Salut Pottiez, merci pour ta réponse mais 2 remarques :

    1) J'aimerais que la dernière ligne soit affiché même si on ne sélectionne aucune case du StringGrid, juste en plaçant la scrollBarre en bas quoi.

    2) Mon StringGrid n'a pas de propriété "Selection" (BDS 2006)

    Merci et a+

  4. #4
    Membre du Club

    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    21
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 21
    Points : 50
    Points
    50
    Par défaut
    Salut.

    On peut fixer la première ligne visible de la Grid en affectant une valeur à la propriété "TopRow" ; donc si votre Grid présente 10 lignes visibles, en faisant :
    MyGrid->TopRow = MyGrid->RowCount - 10;

    la dernière ligne affichée devrait être la dernière visible dans votre Grid.

    A tester...

  5. #5
    Membre actif Avatar de Bily.sdi
    Profil pro
    Inscrit en
    Novembre 2005
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Novembre 2005
    Messages : 208
    Points : 206
    Points
    206
    Par défaut
    // si la 1er ligne n'est pas Fixed ( FideRows )
    MyGrid->TopRow = MyGrid->RowCount - 1;

    else
    MyGrid->TopRow = MyGrid->RowCount;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
     
      bool trouver=false;
     
      int i=1; // car 1er ligne fixed
      for(; i<Grille->RowCount && trouver==false; i++)
      {
        if( strstr(Grille->Cells[1][i].c_str(),Edit1->Text.c_str())!=NULL )
        trouver = true;
      }
     
      if (trouver)  Grille->TopRow =  i-1;

  6. #6
    Membre confirmé
    Inscrit en
    Juillet 2005
    Messages
    512
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 512
    Points : 641
    Points
    641
    Par défaut
    Pour une StringGrid nommé StringGrid1 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
     SendMessage(StringGrid1->Handle, WM_VSCROLL, SB_BOTTOM ,0);

  7. #7
    Membre régulier Avatar de marcootz
    Homme Profil pro
    Inscrit en
    Décembre 2006
    Messages
    159
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 159
    Points : 104
    Points
    104
    Par défaut
    Salut,

    J'ai essayé les 2 solutions proposées, le TopRow et le sendMessage. Les 2 solutions fonctionnent. Merci à vous tous.
    Marcootz

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

Discussions similaires

  1. Problème de positionnement des composants dans un formulaire
    Par cyberdevelopment dans le forum Balisage (X)HTML et validation W3C
    Réponses: 2
    Dernier message: 29/08/2011, 10h13
  2. Réponses: 2
    Dernier message: 20/10/2010, 11h09
  3. Problème de positionnement de listview dans multipage
    Par Fouinard dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/03/2009, 11h08
  4. Problème de positionnement de JScrollBar dans une JScrollPane
    Par Gandalf2008 dans le forum Agents de placement/Fenêtres
    Réponses: 5
    Dernier message: 02/06/2008, 15h10
  5. Problème de positionnement d'éléments dans la page
    Par Rocket666 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 18/02/2006, 11h59

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