[vb] fonction qui retourne le nom du bouton

fonction qui retourne le nom du bouton [vb] - Programmation

Marsh Posté le 21-08-2002 à 15:58:41    

Private Sub Command1_Click()
...
End Sub
 
 
j'ai un routine de ce type et je voudrai que quand on clic sur un bouton une boite de message afffiche la propriété Caption du bouton en question ("command1" )
 
donc j'ai essayer :
 
private sub Command1_Click()
mafonc(me.caption)
endsub
 
 
public sub mafonc(arg)
msgbox(arg)
endsub
 
dans cette exemple  je voudrais que la valeur indiquer sur le bouton.
 
 
merci


Message édité par lamatrice le 21-08-2002 à 16:01:07
Reply

Marsh Posté le 21-08-2002 à 15:58:41   

Reply

Marsh Posté le 21-08-2002 à 16:37:18    

Je commence à sommeiller : le pb est où ? Le code donne quoi de travers ?  
 
Je sais plus si Me., c'est la feuille courant ou l'objet courant :pt1cable:.
 
Un peu plusprécis aiderait à aider.

Reply

Marsh Posté le 22-08-2002 à 09:26:59    

ce code donne le caption du formulaire et moi je voudrais qu'il donne le caption du bouton sur lequel on a pressé
 
 
Private Sub Command1_Click()
insertdetails (Me.Caption)
 
End Sub
 
Public Sub insertdetails(argf)
Dim test As Integer
MsgBox (argf)
End Sub


Message édité par lamatrice le 22-08-2002 à 09:27:13
Reply

Marsh Posté le 22-08-2002 à 10:04:54    

private sub Command1_Click()  
mafonc(Command1.caption) ou Command1.text (je sais plus lequel est valide)
end sub  
 
ça irait pas ?
 
(C'est pourquoi je disais que je savais plus si Me était la feuille ou l'objet).
 
Il me semble qu'en VB on peut aussi passer un argument "Control" pour passer l'objet bouton Command1 par exemple.
 
 

Reply

Marsh Posté le 22-08-2002 à 10:12:00    

oui mais je ne connait pas le nom du bouton pour le moment
 
Private Sub Command1_Click()  
insertdetails (Me.Caption)  
End Sub  
 
Private Sub Command2_Click()  
insertdetails (Me.Caption)  
End Sub  
 
Public Sub insertdetails(argf)  
Dim test As Integer  
MsgBox (argf)  
End Sub
 
 
 
 
"...Il me semble qu'en VB on peut aussi passer un argument "Control" pour passer l'objet bouton Command1 par exemple..."  
 
 
je crois que c'est ce que j'ai besoin !!

Reply

Marsh Posté le 22-08-2002 à 13:59:09    

Dans chaque module, faudra bien indiquer le nom de l'objet...
 
Private Sub Command1_Click()  
insertdetails (Command1.Caption)  
End Sub  
 
Private Sub Command2_Click()  
insertdetails (Command2.Caption)  
End Sub  
 
voire, si array (groupe) de boutons
 
Private Sub Command_Click(integer Index) // pb pr syntaxe, ai oublié
insertdetails (Command(Index).Caption)  
End Sub  
 
Public Sub insertdetails(argf)  
MsgBox (argf)  
End Sub  
 
 
Ou plus généraliste (juste idée, à ajuster/adapter)
 
Public Sub insertdetails(Control argf)  ou (argf as Control), ai encore oublié (le C, ça lave le cerveau)
MsgBox (argf.Caption)  
End Sub  
 
Au début, on passe une chaîne Caption venant de n'importe quel objet,
Pour la version "finale", on passe l'adresse/nom d'un objet, et il cherche le membre Caption. S'il existe pas, Cf le résultat (erreur, ??, chaîne vide ?)
 
 
 
 
 
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed