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 :

[VB]resize un mshflexgrid


Sujet :

VB 6 et antérieur

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2005
    Messages
    126
    Détails du profil
    Informations forums :
    Inscription : Août 2005
    Messages : 126
    Par défaut [VB]resize un mshflexgrid
    Salut,
    j'ai un mshflexgrid que je remplis comme ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    For i = 0 To 5
       MSHFlexSort.TextMatrix(i, 0) = "test"
    Next
    Pour la resizer suivant le nombre de ligne, j'ai tenté ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    For i = 0 To 5
       MSHFlexSort.TextMatrix(i, 0) = "test"
    Next  
    MSHFlexSort.Height = i * 290
    ce qui me pose problème, c'est son côté .... "pifométrique" , concernant la valeur 290.
    Est-ce que y a un moyen plus propre ?

    Merci

  2. #2
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Par défaut
    Tiens !
    Chez moi ce n'est pas 290 mais 300...(même valeur que pour un Hscroll)

    et j'ai l'habitude de faire le resize à partir, non de 300, mais de la valeur de la variable toto, calculée en fonction de la police en cours (celle du bureau) car, en effet, l'épaisseur de l'"encadrement" va en dépendre.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private toto as integer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    With Font
      .Size = 12
      toto = int(TextHeight("toto"))
    End With
    et ensuite, là ou tu veux, ton code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    MSHFlexSort.Height = i * toto
    Attention : Font n'est pas la police du contrôle mais l'objet Font.
    Ceci étant dit, je ne suis pas d'accord avec toi car la hauteur totale (ta boucle) doit également prendre en considération la police (surtout si sa taille est supérieure à celle de l'objet Font) de ton contrôle.
    Mais... je peux me tromper... (jusqu'à présent, toutefois, aucun problème rencontré ni sur ma machine, ni sur les machines finales)

    EDIT (et important) : çà, c'est pour un container (form, picturebox...) en Twips. Comme pour le 290 ou 300, d'ailleurs (des twips). Si pas en twips : convertir...le 290 (ou 300) mais pas la variable toto (toujours vraie, elle )

    RE-EDIT : Si la police de ton contrôle est supérieure en taille à celle du bureau, je te laisse deviner (toujours en utilisant l'objet Font), comment calculer la hauteur de tes cellules, d'en faire le total... et d'y ajouter la hauteur de base (toto)
    Amuse-toi bien.

  3. #3
    Membre éprouvé Avatar de medbouh
    Inscrit en
    Mars 2006
    Messages
    152
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2006
    Messages : 152
    Par défaut
    si tu parle d'agrandir le nombre de ligne d'une mshflex grid il faut utilise la propriete ROW et pour les colonnes utilise COL .[/b]

Discussions similaires

  1. Resize d'une image
    Par Anonymous dans le forum C
    Réponses: 6
    Dernier message: 13/07/2008, 22h23
  2. MSHFlexgrid et ColIsVisible
    Par khany dans le forum VB 6 et antérieur
    Réponses: 10
    Dernier message: 10/08/2006, 18h27
  3. [MFC] COmment empecher le resize d'un SDI ?
    Par Soulsurfer dans le forum MFC
    Réponses: 12
    Dernier message: 28/06/2004, 17h28
  4. [] Difference entre MSHFlexGrid et MSFlexGrid
    Par olivierx dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 23/04/2003, 08h48
  5. [VB6] [MSHFlexGrid] Tri sur clic dans la première ligne
    Par degreste dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 06/03/2003, 00h42

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