BtnAjouter.Enabled = txtAjout.Text.Trim() <>

cs_lima900
Messages postés
9
Date d'inscription
jeudi 9 avril 2009
Statut
Membre
Dernière intervention
9 mai 2010
- 27 avril 2009 à 12:10
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
- 27 avril 2009 à 13:46
Bonjour, je vien de commencer la programation evenementielle en vb2008 et j'ai une petite procedure ke je recontre et je comprend pa son utilité et s'il ya quelqun qui me m'expliquer a quoi ça sert alors merci d'avance
La liste des contrôles est la suivante :
n° type nom rôle
1 TextBox txtMultiLignes champ de saisie multilignes
2 TextBox txtAjout champ de saisie monoligne
3 Button btnAjouter Ajoute le contenu de 2 à 1
et deux procedure qui gerent ses controles
la premiere qui ajoute le contenu de txtAjout à celui de txtMultilignes
' évt btnAjouter_Click
Private Sub btnAjouter_Click1(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles btnAjouter.Click
txtMultilignes.Text &= txtAjout.Text
txtAjout.Text = ""
End Sub
et la suivante ke je comprend pa :

Private Sub txtAjout_TextChanged1(ByVal sender As Object, ByVal e As System.EventArgs) _
Handles txtAjout.TextChanged
btnAjouter.Enabled = txtAjout.Text.Trim() <> ""
End Sub

4 réponses

cs_Jack
Messages postés
14007
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
78
27 avril 2009 à 13:22
Salut
(titre pas très parlant, pense à écrire un résumé de ta question la prochaine fois)

VB.Net utilise maintenant des syntaxes propres au C.
Ainsi, de nouveaux symboles apparaissent, comme &= ou +=
Ces syntaxes signifient que tu ajoute du contenu à une variable sans la vider.
   txtMultilignes.Text &= txtAjout.Text
est équivalent à l'ancienne syntaxe
   txtMultilignes.Text = txtMultilignes.Text & txtAjout.Text
Le += sera réservé aux calculs mathématiques

Pour la 2ème syntaxe : btnAjouter.Enabled = txtAjout.Text.Trim() <> ""
Il s'agit d'une conversion implicite du langage : Ici, tu transforme la condition txtAjout.Text.Trim() <> "" en booléen et tu l'affectes à la propriété Enabled de ton bouton.
La syntaxe explicit aurait été :
   btnAjouter.Enabled = CBool(txtAjout.Text.Trim() <> "")

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

<hr />Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
0
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
72
27 avril 2009 à 13:29
pas de conversion ici, jack...

un test renvoie un boolean naturellement.

c'est un raccourci à

If txtAjout.Text.Trim() <> "" Then
btnAjouter.Enabled = True
Else
btnAjouter.Enabled = False
End If
0
cs_lima900
Messages postés
9
Date d'inscription
jeudi 9 avril 2009
Statut
Membre
Dernière intervention
9 mai 2010

27 avril 2009 à 13:41
resalut et merci encore .alors j'ai un probleme avec une autre procedure qui est la suivante:
je comprend pa le code en rose est ce ke ( e.handled=true ) veu dire ke la procedure sera executé si la condition est verifié





Private Sub






txtSaisie_KeyPress(



ByVal



sender



As Object



,



ByVal



e



As




System.Windows.Forms.KeyPressEventArgs) _







Handles






txtSaisie.KeyPress




Dim






touche



As Char



= e.KeyChar





If







touche = ControlChars.Cr



Then





MessageBox.Show(txtSaisie.Text, "Contrôle", MessageBoxButtons.OK, MessageBoxIcon.Information)



e.Handled =







True
End If


End Sub
0
Renfield
Messages postés
17287
Date d'inscription
mercredi 2 janvier 2002
Statut
Modérateur
Dernière intervention
27 septembre 2021
72
27 avril 2009 à 13:46
pourquoi ne pas lire la doc ?

Remarks
If the event is not handled, it will be sent to the operating system for default processing. Set Handled to true to cancel the KeyPress event.


http://msdn.microsoft.com/en-us/library/system.windows.forms.keypresseventargs.handled.aspx
0