Aide pour TextBox

Résolu
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007 - 20 juin 2007 à 11:50
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007 - 21 juin 2007 à 13:51
Bonjour, je développe actuellement un programme qui à l'aide d'un bouton "Mesure" mesure la valeur d'un capteur et avec un autre bouton ( Envoie), j'envoie cette valeur sur le port.


En fait, mon problème, c'est que j'aimerais prendre 10 mesures et afficher chaque mesure dans un textbox a tour de rôle; je m'explique :


_ Appui sur "Mesure" -> Affichage de la valeur dans le Txtbox1 -> Appui sur "Envoie" ->envoie de cette mesure via port com -> Txtbox1 devient d'une autre couleur


_  Appui sur "Mesure" -> Affichage de la valeur dans le Txtbox2 -> Appui sur "Envoie"->envoie de cette mesure via port com -> Txtbox2 devient d'une autre couleur

Et ceci pour les 10 mesures

Merci d'avance pour vos réponses

26 réponses

Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 16:56
Je vais chercher un peu de mon coté mais en tout cas merci pour ton aide et puis je te tiendrai au courant de la suite des évènements.

Merci à tous
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 11:56
Salut,
Utilise un groupe de controle (textbox) ie: des textbox avec le meme nom mais avec la propriété index qui change.

Cela te permettra d'avoir une variable d'indice courant pour remplir tes textbox et les changer de couleur

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 12:05
D'accord, je viens de faire ce que tu m'a dit, mais ensuite, quel est la procédure a établir ? As tu un exemple?

Merci d'avance pour ta réponses
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 12:39
Re,
Dans un projet neuf, regarde ce que fait ce code.

Option Explicit
'Une feuille avec Dix Textbox
'appelé TxtBox (index de 0 à 9)
'un bouton appelé Mesure
'un bouton appelé Envoie

'represente l'indice courant pour
'la gestion du remplisasge
Private IndiceCourant As Integer
'Flag pour etre sur d'avoir appuyer sur mesure
Private CanSend As Boolean
Private Sub Envoi_Click()
   'si pas autorise a envoyer on sort
   If Not CanSend Then Exit Sub
   TxtBox(IndiceCourant).BackColor = vbBlue
   Call EnvoieValeurCOMM(TxtBox(IndiceCourant).Text)
   IndiceCourant = IndiceCourant + 1
   CanSend = False
End Sub<hr />
Private Sub Form_Load()
   Randomize
   IndiceCourant = 0
   CanSend = False
End Sub<hr />
'simule l'envoie de valeur inutile pour toi
Private Sub EnvoieValeurCOMM(ByVal Val As String)
   MsgBox "envoi " & Val & " par port comm"
End Sub<hr />
'Simule les valeur (inutile pour toi)
Private Function GetValeur() As Integer
   GetValeur = Int((Rnd * 15000) + 1)
End Function<hr />
Private Sub Mesure_Click()
   'pour ne pas lire plusieur fois la valeur
   If CanSend Then Exit Sub
   TxtBox(IndiceCourant).Text = GetValeur
   CanSend = True
End Sub<hr />, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 13:59
Désolé mais ton code ne fonctionne pas, en fait je suis  débutant, je comprends pas très bien .
Moi en fait pour afficher ce qu'il y a dans le txtbox j'utilise :


MSComm.Output = Text1.Text


Text1.BackColor = vbGreen
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 14:05
Salut,
Qu'est ce qui ne fonctionne pas , y a t il des erreurs?
Je l'ai testé chez moi et ca fonctionne (du moins pour ce que je comprends de ton problème)

Qu est ce que tu ne comprends pas?
avec les correction ou il faut le code serait

Private Sub Envoi_Click()
   'si pas autorise a envoyer on sort
   If Not CanSend Then Exit Sub
   TxtBox(IndiceCourant).BackColor = vbGreen
    MSCOMM.output =    TxtBox(IndiceCourant).Text
   IndiceCourant = IndiceCourant + 1
   CanSend = False
End Sub

Pas très compliquer.
si tu ne comprends pas il faut expliquer mieux ton problème je ne suis pas devin .

@+: Ju£i?n
Pensez: Réponse acceptée
0
jmfmarques Messages postés 7666 Date d'inscription samedi 5 novembre 2005 Statut Membre Dernière intervention 22 août 2014 27
20 juin 2007 à 14:13
Bonjour Julien,

pose-lui (à tout hasard) les 2 questions suivantes :
1) développes-tu bien sous VB6 et pas sous VBA ? (on ne sait jamais...)
2) as-tu bien créé un groupe de contrôles indexés ?

Réflexe devenu, hélàs, de prudence...
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 14:32
Julien j'ai réussi à simuler le fonctionnement de ton premier programme mais en fait tu vois je teste avec hyper terminal et j'aimerai par exemple: j'écrit 1000 sur hyperterminale, je fais mesure j'ai 1000 qui s'affiche dans le textbox1 ensuite je l'envoie, la case devient verte. Ensuite j'écrit 2000 dans hyperterminale, je fais mesure j'ai 2000 qui s'affiche dabs le textbox2 ensuite je fais envoie , la case devient verte.
Voila j'espère que vous m'avez compris et désoler si je ne suis pas très claire en tout cas merci pour votre aide
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 14:47
Salut,
Désolé mais je pense qu'avec ce que je t'ai proposé tu devrais t'en sortir.
Car là franchement jene vois pas ou est ton problème.
Tu arrive bien à récupérer les données envoyéess depuis l'hyperterminal non?

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 14:57
He bien avec ton code non justement
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 15:16
Re,
Quel code utilises tu NORMALEMENT pour récupérer et ecrire...

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 15:20
Pour récupérer j'utilise :
MSComm.Input = Text1.Text

Pour envoyer j'utilise :

MSComm.Output = Text1.Text

Je t'envoi mon code par MP
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 15:34
Re,
Est ce que au moins tu travailles avec un groupe de contrôle comme je te proposais????

essaie
Option Explicit

Option Explicit
'Une feuille avec Dix Textbox
'appelé TxtBox (index de 0 à 9)
'un bouton appelé Mesure
'un bouton appelé Envoie

'represente l'indice courant pour
'la gestion du remplisasge
Private IndiceCourant As Integer
'Flag pour etre sur d'avoir appuyer sur mesure
Private CanSend As Boolean
Private Sub Envoi_Click()
  'si pas autorise a envoyer on sort
  If Not CanSend Then Exit Sub
  TxtBox(IndiceCourant).BackColor = vbGreen
  MSComm.Input = TxtBox(IndiceCourant).Text
  IndiceCourant = IndiceCourant + 1
  CanSend = False
End Sub<hr />Private Sub Form_Load()
  Randomize
  IndiceCourant = 0
  CanSend = False
End Sub<hr />
Private Sub Mesure_Click()
  'pour ne pas lire plusieur fois la valeur
  If CanSend Then Exit Sub
  TxtBox(IndiceCourant).Text = MSComm.Output
  CanSend = True
End Sub<hr />

, ----
[code.aspx?ID=41455 By Renfield]

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 15:37
J'essai, je te tient au courants et encore merci
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 15:50
Il y a rien à faire sa marche pas en fait quand je fais cette fonction sur un projet vierge sa marche mais quand je l'incorpore dans mon programme cela ne fonctionne pas
Tu as reçu mon code ???
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 15:55
Salut,
Je préfèrerais que tu me l'envoie par mail. epsylon9@gmail.com

Peu etre que quand tu l'incorpore dans ton projet, tu n'as pas de groupe de controle appelé TxtBox.

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 16:03
Ba si pourtant........

Je t'ai envoyer le code
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 16:07
Salut,
Quand je dit par mail, cela permet d'envoye par ZIP tout le projet ce qui m'evite de le refaire de mon coté et qui en plus permet d'avoir strictement le meme.

@+: Ju£i?n
Pensez: Réponse acceptée
0
Aymeric44000 Messages postés 15 Date d'inscription mercredi 20 juin 2007 Statut Membre Dernière intervention 21 juin 2007
20 juin 2007 à 16:15
Laisse tomber alors je suis au boulot et je n'ai pas le temps de faire toutes ces manips

Merci quand meme
0
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
20 juin 2007 à 16:19
Re,
Bah moi aussi j suis au boulot mais je prends tout de meme le temps de t'aider....

@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous