[Visual Basic] MSFlexGrid

Bonjour à tous (et toutes)

Quelqu'un pourrait-il m'expliquer comment fonctionne une Flexgrid ? Je sais que je peux faire des choses avec les propriétés Row, Col, et Text, mais je ne sais pas comment m'en servir et ne connais pas la syntaxe.
Je voudrais donner des titres à mes colonnes, et alimenter chaque lignes de la grille avec des enregistrements d'une table (avec recordset).
Si quelqu'un pouvais me donner quelques trucs je lui en serais reconnaissante. Je travaille sous VB6.
En vous remerciant.

5 réponses

  1. Salut tout le monde

    j'ai une MSFlexGrid rempli par des résultat de recherche d'une base de donnée, i y a il quelqu'un svp me dire la méthode pour calculer les nombres des résultat qui s'affiche sur le MSFlexGrid.

    merci pour tous
    2
    1. MSFlexGrid.Rows calcule le nombre de ligne
      si tu veux calculer la somme des données de la prmière colone de ton MSFlexGrid
      for i=1 to MSFlexGrid.Rows-1
      cel=MSFlexGrid.matrix(i,0)
      s=s+cel
      next

      alors s contient la somme.
      0
  2. Salut klowlead,

    Voici peut-être une première approche à ta question :
    dans la forme où tu as placé ta MsFlexGrid, par un click "droit" sur celle-ci, définir dans les proptiétés : le nombre de lignes et le nombre de colonnes. Placer 1 dans la zone "Fixed row".
    Cette ligne fixe te servira plus tard à y indiquer les entêtes de colonnes. Pour alimenter tes entêtes :

    .MaGrid.Clear
    .MaGrid.Rows = 1
    .MaGrid.Row = .GridAgents.Rows - 1
    MaGrid.Col = 0: MaGrid.ColWidth(0) = 2000: MaGrid = "Nom"
    MaGrid.Col = 1: MaGrid.ColWidth(1) = 2000: MaGrid= "Prenom"
    MaGrid.Col = 2: MaGrid.ColWidth(2) = 900: MaGrid = "Dat. nais."
    MaGrid.Col = 3: MaGrid.ColWidth(3) = 1000: MaGrid = "Employeur"
    MaGrid.Col = 4: MaGrid.ColWidth(4) = 1100: MaGrid = "Num. méd."
    MaGrid.Col = 5: MaGrid.ColWidth(5) = 3000: MaGrid= "Localité"

    .......

    Tu crées ensuite ton ordre SQL qui te permet d'aller chercher les zônes dont tu as besoin pour afficher dans ta grid.

    If Not EOF Then

    Do Until EOF
    .MaGrid.Rows = .MaGrid.Rows + 1
    .MaGrid.Row = .MaGrid.Rows - 1
    MaGrid.Col = 0: MaForme.MaGrid = zone fichier (venant de SQL)
    MaGrid.Col = 1: MaForme.MaGrid = zone fichier

    ......

    MoveNext
    Loop
    End If

    Voilà, essaie d'abord avec ces quelques petites notes (qui, j'espère, sont assez claires).

    Bon courage,

    Rudy.
    1
    1. Salut Rudy, merci pour ta réponse, j'ai trouvé ce que je voulais faire entre temps. Voici une partie du code que j'ai fait pour mon application si ça peut aider quelqu'un :

      Private Sub Form_Load()

      MSFlexGrid1.Cols = 4
      MSFlexGrid1.FixedCols = 0

      rsSession.MoveFirst

      MSFlexGrid1.ColWidth(0) = 1500
      MSFlexGrid1.ColWidth(1) = 1500
      MSFlexGrid1.ColWidth(2) = 1700
      MSFlexGrid1.ColWidth(3) = 1500

      MSFlexGrid1.Row = 0
      MSFlexGrid1.Text = "Code Session"
      MSFlexGrid1.Col = 1
      MSFlexGrid1.Row = 0
      MSFlexGrid1.Text = "Code Stage"
      MSFlexGrid1.Col = 2
      MSFlexGrid1.Row = 0
      MSFlexGrid1.Text = "Date de session"
      MSFlexGrid1.Col = 3
      MSFlexGrid1.Row = 0
      MSFlexGrid1.Text = "Animateur"

      Do Until rsSession.EOF

      MSFlexGrid1.AddItem rsSession("CodeSession") & Chr(9) & rsSession("CodeStage") & Chr(9) & rsSession("DateSession") & Chr(9) & rsSession("NumAnim")
      rsSession.MoveNext

      Loop

      End Sub
      0
    2. @klowleadOK

      All 's well that ends well...
      0
    3. @klowleadslt
      voila j'ai executé ton code main j'ai un bug dans la ligne
      Do Until rsSession.EOF

      MSFlexGrid1.AddItem rsSession("CodeSession") & Chr(9) & rsSession("CodeStage") & Chr(9) & rsSession("DateSession") & Chr(9) & rsSession("NumAnim")
      rsSession.MoveNext

      Loop
      aides moi sto j'en ai vraiment besoin
      0
  3. Bonjour,

    j'ai un MSFlexGrid et je le remplis avec une listeBox ou j'affecte mes données
    j'ai un probleme je vais savoir si c'est possible d'enregistrer les elements d'un MSFlexGrid dans une base de données avec un evenement d'un bouton par exemple. j'ai deja essayé mais ca marche pas. je sai pas si c'est possible ou non ????
    Merci
    0
    1. Salut j'aimerai avoir de l'aide à propos de mon msflexgrid je veux aprés saisi dans une cellule etkan je tape sur entrer le pointeur se met sur la ligne suivante automatiquement
      0
      1. en ce qui me concerne je procède comme ce qui suit
        supposons que j'ai un tableau de 05 colonnes et 04 lignes
        les titre des colonnes doivent contenir les valeurs suivantes
        Maths physique sciences chimie
        pour remplir la première ligne a partir de la deuxième cellule
        je fais comme ce qui suit:
        .col=1
        .row=0
        .colsel=4
        .row=0
        .clip="Maths" & vbtab & "physique" & vbtab & "sciences" & vbtab & "chimie"
        pour remplir les titre des la première colonne
        .col=0
        .row=1
        .col=0
        .row=3
        .clip="mohamed" & vbcr & "magali" & vbcr & "ludi"
        0