[Visual Basic] MSFlexGrid

Fermé
klowlead Messages postés 11 Date d'inscription mardi 25 janvier 2005 Statut Membre Dernière intervention 18 octobre 2007 - 24 févr. 2005 à 09:45
wokerm Messages postés 37 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 6 janvier 2015 - 20 févr. 2010 à 19:43
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.
A voir également:

5 réponses

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
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
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
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
rudy > klowlead
1 mars 2005 à 15:23
OK

All 's well that ends well...
0
titi311 > klowlead
23 juin 2008 à 16:12
slt
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
brahimhakkou Messages postés 44 Date d'inscription samedi 21 janvier 2006 Statut Membre Dernière intervention 7 mai 2007
1 mai 2007 à 20:50
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
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

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
wokerm Messages postés 37 Date d'inscription dimanche 8 juin 2008 Statut Membre Dernière intervention 6 janvier 2015 1
20 févr. 2010 à 19:43
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