Tableau interface qui accumule des informations

anecaca Messages postés 30 Date d'inscription jeudi 24 février 2011 Statut Membre Dernière intervention 24 avril 2011 - 7 mars 2011 à 15:58
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 - 7 mars 2011 à 21:49
Bonjour à tous,

Je suis +/- débutant en VB et je dois réaliser, dans le cadre d'un cours de construction, un logiciel en VB qui traite des treillis en 2D.

Une des fenêtre concerne l'encodage des coordonnées (x,y) des noeuds.

Je voudrais qu'au fur et à mesure que l'utilisateur encode les noeuds, ces derniers apparaissent et s'accumulent dans un tableau que je mettrais en bas de fenêtre.

L'utilisateur rentrerait les coordonnées x et y dans un objet Text et quand il cliquerait sur "Noeud suivant", il verrait les noeuds s'afficher dans le tableau au fur et à mesure qu'il sont encodés.

J'espère avoir été suffisamment clair. Sinon, la vidéo qui s'affiche quand on clique à gauche sur "Structurix" présente quelque chose de similaire :

http://y.callaud.free.fr/

Ma question est donc la suivante:

Comment réaliser un tel tableau visible à l'interface qui assurait cette fonction?

D'avance merci.

2 réponses

cs_ShayW Messages postés 3253 Date d'inscription jeudi 26 novembre 2009 Statut Membre Dernière intervention 3 décembre 2019 57
7 mars 2011 à 19:59
Salut

à quoi sert ton tableau ?
Si c'est pour afficher en bas de l'écran utilise
un listbox
0
CGSI3 Messages postés 416 Date d'inscription vendredi 22 février 2008 Statut Membre Dernière intervention 7 janvier 2018 1
7 mars 2011 à 21:49
Bonjour,
Voici également une solution assez simple
Utiliser un DataGridView en l'initialisant par un tableau 2 Dimensions
dynamique.
(La seconde fonction: c'est juste pour la présentation)

   Sub Export_GridView(ByVal Grille As DataGridView, ByRef Matrice As Single(,))
      'Auteur: CGSI3 But:  Initialise un datagridview depuis un tableau 2 Dimensions Single
      Dim Max1 As Integer, Max2 As Integer
      Max1 Matrice.GetUpperBound(0) : Max2 Matrice.GetUpperBound(1)
      If Grille.DataSource = Nothing Then
         Grille.ColumnCount = Max1 + 1
         Grille.RowCount = Max2 + 1
      End If
      For cp1 As Integer = 0 To Max1
         For cp2 As Integer = 0 To Max2
            Grille.Item(cp1, cp2).Value = Matrice(cp1, cp2)
         Next cp2
      Next cp1
   End Sub

  Sub Colonne_Ajuste(ByVal Grille As DataGridView, Optional ByRef Largeur As Integer = 0)
      'Auteur: CGSI3 But:  Ajuste les colonnes d'un DataGridView 
      If Largeur 0 Then Largeur (Grille.Width - 45) / Grille.ColumnCount
      For cp2 As Integer = 0 To Grille.ColumnCount - 1
         Grille.Columns.Item(cp2).Width = Largeur
      Next cp2
   End Sub


Bonne Prog CGSI3
0
Rejoignez-nous