Textbox et datagrid [Résolu]

Signaler
Messages postés
19
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
12 juin 2007
-
Messages postés
19
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
12 juin 2007
-
Bonjours a tous,

   Voici mon probléme je dispose d'une datagrid allimenté par une BDD access jusque là no souci ^^

   A present je voidrais savoir comment réalisé la fonction suivant :
             click sur un cellule
                     recupération du numéro de ligne
                           Affichage du contenu des différentes Cellule dans des Textbox prevu pour modification et update de la BDD

   je ne connai VB que depuis une semaine pour un stage et entrer directement dans le sujet est assez compliqué.

Merci.

9 réponses

Messages postés
19
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
12 juin 2007

Ceci est un code utilisant un module ADODB pour la connection cependant j'ai trouvé la solution

je recupere le numéro de ligne et la clef primaire:

Dim cle As String
Dim Ligne As Integer
 'On recupere la valeur Cle de la ligne sur laquelle on a cliquésous forme d'une chaine
   Ligne = DataGrid_vanne.Row
   cle = DataGrid_vanne.Columns(0).CellValue(DataGrid_vanne.RowBookmark(Ligne))
   Txt_Nom = cle 'On Rempli le champ Nom
     
'Fonction de connection non détaillé ici mais c'est juste uen connection a la base de donné comme les autres   
   If Funct_Open_ADODB_Recordset(Chemin_BDD_Biblio, "", "", BDD_Table_Parc_Vanne) Then
           
                'On recherche le Numéro Clé Primaire de l'enregistrement a effacer
                ADODB_Recordset.Find "Numéro = '" & cle & "'", , adSearchForward, 1 '
               
                'Si la recherche a Trouve l'element avant la fin de la base de données
                If Not ADODB_Recordset.EOF Then
                    'On modife les enregistrements en cours
                    Txt_Designation = ADODB_Recordset![Descriptif].Value
                    Cbo_Materiel = ADODB_Recordset![Materiel].Value
                    Cbo_API = ADODB_Recordset![Automate].Value
                    Cbo_Tete = ADODB_Recordset![Tete].Value

on oublit pas de fermé les actions et c'est bon
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
121
Il me semble qu'il faut utiliser la fonction Column du datagrid en lui spécifiant le titre de la colonne (je sais plus, ca fait longtemps que j'utilise plus ce contrôle, je lui préfère le SCGrid : aussi rapide mais bien plus pratique à utiliser !).
Messages postés
19
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
12 juin 2007

donc j'arrive a récupéré le numéro de ligne avec

Private Sub DataGrid_vanne_Click()
   Dim ligne As Integer


   Txt_ligne = DataGrid_vanne.Row          'affichage dans un text box pour visualisation direct

End Sub

maintenant je sais pas comment affiché dans un textbox le contenu de la colonne X sachant la ligne  et les nom des colonne
sinon je passe par un recordset j'ai pu voir qu'il y avais interraction entre les deux et un system de coordonnné ....(colonne ligne)
donc je cherche a faire un truc du style:

txt_nom = Datagrid. "blabla"(nom de la colonne, ligne)    je sais pas comment arriver a un résultat comme celui-ci

et sinon comment interdire au gens de modifier directement a l'interrieur de la grid? un case que j'ai pas coché?
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
121
arf, pas fait gaffe que c'était pour du .net, je pourrais pas t'aider plus vu que je fais pas de .net.
Messages postés
139
Date d'inscription
mardi 18 janvier 2005
Statut
Membre
Dernière intervention
8 décembre 2008

pourquoi tu ne fais pas du dot net.
tu as souvent de très belle solutions, et migrer vers le dot net sembleêtre une bonne chose!!
n'est ce pas??
Messages postés
15814
Date d'inscription
jeudi 8 août 2002
Statut
Modérateur
Dernière intervention
4 mars 2013
121
Lol, j'ai mes raisons que j'ai déjà exposé en large et en travers : j'ai préféré passer à un langage bien plus pérenne que le vb : le java.
Tu as les mêmes fonctionnalités que le .net, les mêmes inconvénients, mais surtout, sun au moins ils respectent la compatibilité avec les anciennes versions.
Messages postés
139
Date d'inscription
mardi 18 janvier 2005
Statut
Membre
Dernière intervention
8 décembre 2008

J'essai de faire le même virage : du VB6 vers le java.
Je suis entrain de preparer une certification. mais avec les contraintes de mon travail, je trouve dificilement le temps!!

et bonne chance à tout le monde
Messages postés
19
Date d'inscription
jeudi 19 avril 2007
Statut
Membre
Dernière intervention
12 juin 2007

Euh on pe revenir a ma question svp

Moi j'ai pas le choix donc qui peut m'aider a trouvé la solution?
Messages postés
1
Date d'inscription
lundi 19 décembre 2005
Statut
Membre
Dernière intervention
13 août 2007

je sais pas si c'est pratique mais je crois que ca peux t'aider

Private Sub DataGrid1_Click()


Text4 = DataGrid1.Row
If Not Adodc1.Recordset.RecordCount = 0 Then
    Text1.Text = IIf(IsNull(Adodc1.Recordset!id), "", Adodc1.Recordset!id)
    Text2.Text = IIf(IsNull(Adodc1.Recordset!nom), "", Adodc1.Recordset!nom)
    Text3.Text = IIf(IsNull(Adodc1.Recordset!prenom), "", Adodc1.Recordset!prenom)
      Else
    Text1.Text = IIf(IsNull(Adodc1.Recordset!id), "", Adodc1.Recordset!id)
    Text2.Text = IIf(IsNull(Adodc1.Recordset!nom), "", Adodc1.Recordset!nom)
    Text3.Text = IIf(IsNull(Adodc1.Recordset!prenom), "", Adodc1.Recordset!prenom)
End If


End Sub