Accueil > Forum > > > > TextBox, une question simple mais qui me pose problème :
TextBox, une question simple mais qui me pose problème :
vendredi 18 juillet 2008 à 22:55:41 |
TextBox, une question simple mais qui me pose problème :

benji78
|
Bonjour/Bonsoir à tous, J'aurais besoins de votre aide pour résoudre un problème simple sur le papier, mais où je ne trouve pas de solution (Je suis débutant, c'est donc normal ? ) ; En faite mon problème est divisé en deux parties, qui sont relativement proches. Mon application ressemble à ceci :  Comme vous pouvez le voir en bas de l'application il y a un TextBox (ayant la propriété) ReadOnly vérifiée (True) et j'aimerais que pour chaque item que je vais ajouter dans mes List mes variables CD (référant à Commandes de Déclenchement), et CE (référant à Commandes de l'événement) soient modifiée ainf que le text de mon TextBox soit modifié. Comme vous pouvez le voir le text lors du lancement de l'application est le suivant : <html><style type=text/css>TEXTAREA { background-color : white; font-family : MS Sans Serif; font-size : 8px;}</style><center><table cellspacing=2><tr height=25><th colspan=3 align=left>Page 1</th></tr><tr><td><b>Conditions d'événements</b></td><td></td><td><b>Commande événements</b></td></tr><tr><td><TEXTAREA ROWS=7 COLS=30 SIZE=255 WRAP=soft readonly>" + CD + "</TEXTAREA></td><td width=20></td><td><TEXTAREA ROWS=7 COLS=50 SIZE=255 WRAP=soft readonly>" + CE + "</TEXTAREA></td></tr></table></html>
(Donc CD et CE n'ont pas de valeurs se qui est normal)
Mon second problème qui s'en rapproche est : Dans une autre fenêtre de mon application, dont voici à quoi cette dernière ressemble pour le moment :

Et lorsque je clique sur l'item : "Message('Entrez votre message ici')" Une autre fenêtre s'ouvre, et l'utilisateur est invité à entrer dans un TextBox son message. Puis lorsque celui-ci clique sur le bouton Ok, j'aimerais que son message soit inséré dans le TextBox situé à gauche du bouton Ajouter (et Annuler).
Merci d'avance pour l'aide que vous pourrez m'apporter.
|
|
vendredi 18 juillet 2008 à 23:18:18 |
Re : TextBox, une question simple mais qui me pose problème :

nhervagault
|
Salut,
Peux-tu rexpliquer j'ai rien compris, c'est pas clair
Que veux-tu faire pour la question 1, la question 2?
Merci
|
|
vendredi 18 juillet 2008 à 23:27:44 |
Re : TextBox, une question simple mais qui me pose problème :
|
samedi 19 juillet 2008 à 00:21:07 |
Re : TextBox, une question simple mais qui me pose problème :

gillardg
|
un bout de code est plus parlant qu'une belle image ou un long discours  il y a 10 sortes de gens: ceux qui comprennent le binaire, et les autres
|
|
samedi 19 juillet 2008 à 06:33:49 |
Re : TextBox, une question simple mais qui me pose problème :

sturtrid
|
Salut !  Vi, c'est pas faux gillardg... Bon j'ai pas bien cerné ton 1er problème, tu redéfinis le contenu de ta textbox après modification de ton CD et CE... non? Pour le second problème (si c'est ça ta question): - Soit tu utilises une nouvelle form et tu t 'embêtes pour une simple saisie :
=> Soit tu gères l'action du coté de ta form appelante:
(Dans ta newForm, tu devras mettre la valeur "OK" à la propriété "DialogResult" de ton bouton d'acceptation) If (newForm.ShowDialog = DialogResult.OK) Then Me.TextBoxDeGauche.Text = newForm.TextBoxDeSaisie.Text EndIf
=> Soit tu gères l'action du coté de ta form appelée:
newForm.Show() --> A mettre dans la classe de ta formAppelante (Code ci-dessous à placer dans la classe de ta newForm) Private Sub tonBouton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles tonBouton.Click
formAppelante.TextBoxDeGauche.Text =Me.TextBoxDeSaisie.Text Me.Close() End Sub
- Soit tu utilises une InputBox : TextBoxDeGauche.Text = _ InputBox("Ton message", "Titre fenêtre", _ "Réponse si aucune entrée utilisateur") => Et avec un test pour savoir si l 'utilisateur à bien entré un message... Dim userMsg As String = _ InputBox("Ton message", "Titre fenêtre",_ "Réponse par défaut si aucune entrée utilisateur") If (userMsg <> "Réponse par défaut si aucune entrée utilisateur") Then TextBoxDeGauche.Text = userMsg End If
(Le "mieux", c'est de mettre String.Empty ou "" à la place de "Réponse par défaut si aucune entrée utilisateur"comme ça tu testes si l'entrée n'est pas nulle en même temps...)
Bon voilà... Si ça résoud ton problème ;-) ++
|
|
samedi 19 juillet 2008 à 12:13:00 |
Re : TextBox, une question simple mais qui me pose problème :

benji78
|
Alors premier problème -> je réexplique , en mieux :) En faite oui , j'aimerais que pour chaque item que va venir s'ajouter dans mes deux listes, j'extrait l'item puis je l'ajoute à CD pour les items du groupe Commandes de Déclenchement, séparé par un retour chariot en html, donc "<br>",ainsi que tous les items qui viendront s'ajouter à ma liste du groupe Commande de l'événement, pour CE. J'espère que vous comprennez mieux. Sinon -> "tu redéfinis le contenu de ta textbox après modification de ton CD et CE... non?"
C'est ça. Ensuite second problème: " => Soit tu gères l'action du coté de ta form appelée: newForm.Show() --> A mettre dans la classe de ta formAppelante (Code ci-dessous à placer dans la classe de ta newForm) Private Sub tonBouton_Click(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles tonBouton.Click formAppelante.TextBoxDeGauche.Text =Me.TextBoxDeSaisie.Text Me.Close() End Sub"
C'est comme cette solution que j'ai choisi car j'effectue une action du côté de la Form appellée (comptage des caractères entrés).
J'ai essayé pour mon test d'utiliser des commandes simples :
Private Sub ButtonCEMessageOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonCEMessageOk.Click If TextBox1.Text.Length > 5 Or TextBox1.Text.Length = 5 Then FormCEajouter.TextBoxCE.Text = Me.TextBox1.Text FormCEajouter.ListBoxCommandes.SelectedItem = "Message('Entrez votre message ici')" FormCEajouter.Update() Me.Close() ElseIf TextBox1.Text.Length < 5 Then FormCEajouter.TextBoxCE.Text = "Test" FormCEajouter.ListBoxCommandes.SelectedItem = "Message('Entrez votre message ici')" FormCEajouter.Update() Me.Close() EndIf EndSub
Et voici se que j'utilise pour appeler la fenêtre FormCEMessage
Private Sub ListBoxCommandes_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListBoxCommandes.DoubleClick If ListBoxCommandes.SelectedItem = "Message('Entrez votre message ici')"Then Dim frm AsNew FormCEMessage TextBoxCE.Text = "Message('Votre Message')" Me.Update() frm.ShowDialog() ElseIf ListBoxCommandes.SelectedItem = "Condition('Appuie Sur Bouton')"Then Dim frm AsNew FormCEcondition frm.ShowDialog() ElseIf ListBoxCommandes.SelectedItem = "AddObject(Nom Objet)"Then Dim frm AsNew FormCEAddObject frm.ShowDialog() EndIf EndSub
Ce qui m'étonne c'est que le message "Message('Votre Message')", s'affiche correctement, mais qu'avec la méthode que vous me conseillez, cela ne change pas le text affiché par TextBoxCE...
Merci de votre aide.
|
|
samedi 19 juillet 2008 à 16:49:55 |
Re : TextBox, une question simple mais qui me pose problème :
|
samedi 19 juillet 2008 à 17:55:11 |
Re : TextBox, une question simple mais qui me pose problème :

sturtrid
|
Re Pour ton test de comptage des caractères entrés, tu peux simplifier un peu... If (TextBox1.TextLength >= 5)Then Ici tu regroupes tes 2 tests et ton opérateur logique... [...] Else [...] End If
Du coup ton Else représente le seul cas restant... Soit TextBox1.TextLength < 5 Petite astuce obsolète... Tu peux mettre TextBox1.TextLength à la place de TextBox1.Text.Length
Sinon tu peux aussi gérer ça coté formAppelante (autre solution) :
If (newForm.ShowDialog = DialogResult.OK)Then If (TextBox1.TextLength >= 5)Then Ici tu regroupes tes 2 tests et ton opérateur logique... [...] Else [...] End If End If
Et même en utilisant une InputBox :
Dim userMsg As String = _ InputBox("Ton message", "Titre fenêtre", _ "Réponse par défaut")
If (userMsg <> "Réponse par défaut") Then If (userMsg.Length >= 5) Then [...] Else [...] End If End If
"Ce qui m'étonne c'est que le message "Message('Votre Message')", s'affiche correctement, mais qu'avec la méthode que vous me conseillez, cela ne change pas le text affiché par TextBoxCE..."
C'est ce que je t'ai proposé qui ne marche pas? Je ne comprends pas... (Fait attention à l'emploi de .Show et .ShowDialog suivant la méthode choisie [voir mon exemple coté form appelante ou appelée])
Dans ton code tu mets :
[...] TextBoxCE.Text ="Message('Votre Message')" Me.Update() frm.ShowDialog() [...]
Or frm.ShowDialog() envoie vers la form qui modifiera le contenu de ta TextBoxCE, donc je ne vois pas l'utilité d'en modifier le contenu juste avant...
Bye ++
|
|
samedi 19 juillet 2008 à 20:46:36 |
Re : TextBox, une question simple mais qui me pose problème :

benji78
|
Salut, J'ai utilisé la technique expliqué dans ton premier post avec le code suivant : Sub RedefTextBox() Dim cditem AsObject ForEach cditem In CDList.Items CD = CD + cditem + "<br>" Next Dim ceitem AsObject ForEach ceitem In CDList.Items CE = CE + ceitem + "<br>" Next Html.Text = "<html><style type=text/css>TEXTAREA { background-color : white; font-family : MS Sans Serif; font-size : 8px;}</style><center><table cellspacing=2><tr height=25><th colspan=3 align=left>Page 1</th></tr><tr><td><b>Conditions d'événements</b></td><td></td><td><b>Commandes événements</b></td></tr><tr><td><TEXTAREA ROWS=7 COLS=30 SIZE=255 WRAP=soft readonly>" + CD + "</TEXTAREA></td><td width=20></td><td><TEXTAREA ROWS=7 COLS=50 SIZE=255 WRAP=soft readonly>" + CE + "</TEXTAREA></td></tr></table></html>" EndSub
Mais je me demandais : pour actualiser mon TextBox, donc lorsque j'ajouterais, ou modifierais des items sur mon ListBox, quelle commande dois-je utiliser pour appeler le Sub RedefTextBox() [...] End Sub ?
"Pour ton test de comptage des caractères entrés, tu peux simplifier un peu..."
Merci, effectivement c'est mieux, ça évite les commandes implicites.
Pour le second problème : "Orfrm.ShowDialog() envoie vers la form qui modifiera le contenu de ta TextBoxCE, donc je ne vois pas l'utilité d'en modifier le contenu juste avant..."
C'est vrai que ce n'est pas très utile la commande modifiant le texte lors du clique sur l'item, mais là n'est pas le but de se que je souhaite faire ^^, j'aimerais qu'à la place de "Votre message" apparaisse, justement, le message de l'utilisateur.
Par ailleurs je note que la méthode utilisant l'inputbox marche. Mais pour que je puisse l'utiliser j'aimerais savoir s'il était possible d'utiliser cette Sub :
Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged ' compter le nombre de caractères entrés dans la texte box : If TextBox1.Text.Length = 5 Then ' remplacer la dernière touche espace préssée : ind = TextBox1.Text.LastIndexOf(" ") ' par " /n " : txt = TextBox1.Text.Substring(0, ind) & " /n " restant = TextBox1.Text.Substring(ind + 1) EndIf EndSub
Merci des informations et de l'aide :)
|
|
dimanche 20 juillet 2008 à 19:54:43 |
Re : TextBox, une question simple mais qui me pose problème :

sturtrid
|
"Mais je me demandais : pour actualiser mon TextBox, donc lorsque j'ajouterais, ou modifierais des items sur mon ListBox, quelle commande dois-je utiliser pour appeler le Sub RedefTextBox()"
Je ne dois pas avoir bien compris ta question car je ne vois pas trop le souci. Tu fais ton appel à la suite des instructions qui te permettent d'ajouter ou de modifier tes items... Par contre, je vois que tu ne passes pas CD,CE... en paramètre donc comme je te disais, il faut que tes variables soient globales sinon ça marchera pô... Ou alors il s'agit de leur déclaration implicite (Option Explicit off), mais ça c'est pas conseillé.
"Mais pour que je puisse l'utiliser j'aimerais savoir s'il était possible d'utiliser cette Sub : Sub TextBox1_TextChanged(...)"
La pour le coup je comprends vraiment pas le rapport avec l'InputBox... D'ailleurs, c'est quoi ce programme ?
++ 
|
|
Cette discussion est classée dans : message, problème, textbox, application, simple
Répondre à ce message
Sujets en rapport avec ce message
Problème avec un message qui me bloque le load de mon application [ par misterN ]
A tous les VBistes... Dans une appli MDI j'ai dans une Form la déclaration "Public Dict As Dictionary" qui provoque le message suivant au load de l'ap
problème av Rich TextBox [ par Stan62970 ]
Salut !mon probléme est le suivant : j'ai une rich TextBox dans laquelle j'inssert des messages (texte) les message sont envoyé par un client et s'ajo
petit problème winsock [ par alfarabi ]
Bonsoir,Aprés avoir envoyé un message depuis l'application client vers une application serveur, si "j'unload" aussitôt (même évènement) la form client
VBA [ par gpo13 ]
Bonjour à tous,mon problème est simple, j'ai une form contenant 97 textbox, quand je fait une raz de cette form, via un bouton, je veux effacer le co
Problème avec les radiobuttons [ par syann ]
Salut a tous!!! je debute dans la programmation et actuellement jai un véritable problème avec les "radiobuttons",je suis allé sur les forums mais mal
[Catégorie modifiée VB6 --> .Net] Problème Enregistrement de deux textbox [ par Anakin79 ]
Bonjour, Je débute en VB.NET et je cherche à créer un logiciel de notes. J'ai créer deux textbox pour mettre la notes et la matière et un bouton ajou
le focus sur un Textbox pose problème [ par tino67 ]
Bonjour, Alors à j'ai une fenêtre pour inscrire des personnes (plusieurs Textbox )à la fonction load je demande le focus sur textbox1 là tout va bien
Problème sélection ligne d'une listview [ par sancho12345 ]
Bonjour à tous, Une question concernant les listview. J’ai une application qui fonctionne sous vb6, mais lorsque j’ouvre cette application, j’ai une
application [ par midoutouzri ]
j'ai un problème dans mon application. j'aime de connaitre les codes d'ajouter un élément sur l'interface et cette ajout s'insère directement dans not
problème de date et textbox [ par tyron2002 ]
Bonjour à tous, Je vous demande un petit coup de mains car j'ai fait un petit programme dans lequel l'utilisateur doit renseigner une date dans une t
Livres en rapport
|
Derniers Blogs
GESTION D'EXCEPTION AVEC LES TASKSGESTION D'EXCEPTION AVEC LES TASKS par richardc
Nous avons vu dans un précédent article comment utiliser Task pour effectuer des opérations dans un autre thread.
Malheureusement, comme tout le monde n'est pas parfait, il se peut que cette exécution se passe mal et qu'une exception se produise.
La...
Cliquez pour lire la suite de l'article par richardc DéMARRONS AVEC LES TASKSDéMARRONS AVEC LES TASKS par richardc
Que vous le vouliez ou non, le développement multi-tâche est maintenant une obligation pour toute nouvelle application. Il est donc vital d'en comprendre les mécanismes et de s'y mettre le plus tôt possible.
En attendant le .NET Framework 4.5 avec le...
Cliquez pour lire la suite de l'article par richardc SLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPSSLIDE & DéMO TECHDAYS 2012 - FAST & FURIOUS XAML APPS par Vko
Retrouvez les slides et les démo de ma session Fast & Furious XAML Apps. A ceux qui se posent la question : "est-ce que le code de la DataGrid est disponible?", je vous répondrais "pas encore". Je vais mettre en place un projet codeplex pour part...
Cliquez pour lire la suite de l'article par Vko XNA IS DEAD!XNA IS DEAD! par richardc
Depuis la semaine dernière (et grâce aux TechDays 2012), je me penche activement sur la nouvelle version de Windows, aka Windows 8. Vous me direz, il était temps puisque la première preview date de Septembre dernier.
OK. Remarquez, on n'en est qu'aux...
Cliquez pour lire la suite de l'article par richardc TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 !TECHDAYS PARIS 2012 : WINDOWS SERVER "8" QUOI DE 9 ! par ROMELARD Fabrice
Speakers: Fabrice Meillon et Stanislas Quastana Cette session est basée entièrement sur celle donnée lors de la BUILD cet hiver. Il n'y a pas d'ajout d'information en rapport avec cet évènement passé. Windows 8 Server sera intégralem...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice
Logiciels
DocTranslate (V3.1.0.0)DOCTRANSLATE (V3.1.0.0)DocTranslate est un traducteur de document Microsoft Word, PowerPoint et Excel. Il permet d'autom... Cliquez pour télécharger DocTranslate Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System
|