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

VB 6 et antérieur Discussion :

comment faire scroller une MSFlexGrid


Sujet :

VB 6 et antérieur

  1. #1
    Nouveau membre du Club
    Inscrit en
    Novembre 2002
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 41
    Points : 31
    Points
    31
    Par défaut [RESOLU] comment faire scroller une MSFlexGrid
    Bonjour,
    surement un problème tout simple mais je ne trouve pas :

    je crée une MSFlexGrid avec 1 seule ligne (l'entête) puis j'ajoute des lignes au fur et à mesure. EVidemment à un moment, les lignes sont en dehors de l'affichage et les scollbars apparaissent.
    Je voudrais simplement afficher de telle sorte que l'on voit toujours la dernière ligne créée (comme si on scrollait vers le bas).

    Il y a bien la propriété "RowIsVisible" (syntaxe trouvée sur MSDN) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Syntax
    object.RowIsVisible(index) = Boolean
    et voilà mon code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
        MSFlexGrid1.RowIsVisible(MSFlexGrid1.Rows - 1) = True
    Et j'ai l'erreur :

    Affectation à une constante non autorisée
    Si qqun peut m'expliquer soit le pourquoi de l'erreur, soit comment rendre visible la dernière ligne, merci.

    Sergio
    [/b]

  2. #2
    Membre régulier Avatar de jlvalentin
    Profil pro
    Inscrit en
    Décembre 2002
    Messages
    133
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2002
    Messages : 133
    Points : 89
    Points
    89
    Par défaut
    As-tu essayé avec RowSel ?
    Je ne suis pas 100 % sur, mais il me semble que d'affecter à Rowsel le numéro de la derniere ligne devrait résoudre ton souci.

    Jean-Luc

  3. #3
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut Re: comment faire scroller une MSFlexGrid
    Citation Envoyé par sergio_bzh
    Si qqun peut m'expliquer soit le pourquoi de l'erreur, soit comment rendre visible la dernière ligne, merci.
    La propriété RowIsVisible est en lecture seule

    Tu peux par contre modifier la propriété TopRow : c'est le n° de la première ligne affichée (sans tenir compte des lignes "fixes").

    Ex : si tu as 50 lignes dans ton grid, que tu sais que tu ne peux en afficher que 7, affecte la valeur 44 à la propriété TopRow, et tu afficheras les lignes 44 à 50
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

  4. #4
    Nouveau membre du Club
    Inscrit en
    Novembre 2002
    Messages
    41
    Détails du profil
    Informations forums :
    Inscription : Novembre 2002
    Messages : 41
    Points : 31
    Points
    31
    Par défaut
    C'est la 2nde solution avec .TopRow qui fonctionne .
    Et j'ai calculé le nbr de lignes visibles avec .Height et .RowHeight
    Merci.
    Sergio

  5. #5
    Xo
    Xo est déconnecté
    Expert confirmé
    Avatar de Xo
    Inscrit en
    Janvier 2005
    Messages
    2 701
    Détails du profil
    Informations personnelles :
    Âge : 50

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 701
    Points : 4 238
    Points
    4 238
    Par défaut
    Citation Envoyé par sergio_bzh
    Et j'ai calculé le nbr de lignes visibles avec .Height et .RowHeight
    Tu peux faire plus précis : la hauteur d'une ligne est la somme de son RowHeight (indice) + GridLineWidth * 15

    (15 car la propriété GridLineWidth est en pixel, et que je fais mes calculs en Twips, et que 15 est le coefficient de conversion)
    "Ce que l'on conçoit bien s'énonce clairement,
    Et les mots pour le dire arrivent aisément." Nicolas Boileau

    "Expliquer empêche de comprendre si cela dispense de chercher"

    Quiz Oracle : venez tester vos connaissances !

    La FAQ Oracle : 138 réponses à vos questions
    Aidez-nous à la compléter

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

Discussions similaires

  1. [PHP-JS] comment faire scroller une div
    Par Garra dans le forum Langage
    Réponses: 4
    Dernier message: 13/04/2007, 15h00
  2. Réponses: 2
    Dernier message: 29/03/2006, 16h28
  3. Réponses: 1
    Dernier message: 22/11/2005, 12h00
  4. Comment faire fonctionner une scroll bar ???
    Par toto4650 dans le forum MFC
    Réponses: 10
    Dernier message: 18/07/2005, 17h47
  5. Réponses: 2
    Dernier message: 13/12/2004, 16h16

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