Couleur d'un OptionButton au lancement [Résolu]

Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
- - Dernière réponse : cs_masterfree
Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
- 7 févr. 2012 à 11:58
Bonjour à tous,

Comme cela fait déjà plusieurs années que je n'ai plus fait de VB, j'ai beaucoup de lacunes !
Alors, ne m'en veuillez pas trop si mes questions ont l'ait sortie de maternelle.

Je mets ce bout de code pour que vous compreniez mieux.

Au lancement de la proc, l'OptionButton est déjà en background jaune.
Or, je ne voudrais qu'il change de couleur que lorsqu'il est cliqué.

Voulez-vous me dire comment faire ?

Merci d'avance de votre réponse.

Private Sub Q1_Click()
    Q1.BackColor = &HFFFF&
    Q2.BackColor = &H8000000F
    Q3.BackColor = &H8000000F
    Q4.BackColor = &H8000000F
    Q5.BackColor = &H8000000F
       REP = "E"
       L = "E"
End Sub



Cordialement, Masterfree
Afficher la suite 

9 réponses

Meilleure réponse
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
3
Merci
Bonjour,

Tu es sous VB6 ? Utilise alors un groupe de optionbuttons indexés.
La chose sera alors beaucoup plus facile à écrire, avec peu de code.
Confirme d'abord être bien sous VB6 et non sous VBA


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 210 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
3
Merci
Sans groupe indexé, tu n'auras d'autre ressource que d'écrire un code identique pour chacun de tes optionbuttons, ou au mieux d'appeler une procédure paramétrée


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 210 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
3
Merci
C'est alors simple ===>> exemple ===>>
Tu insères un optionbutton nommé Q ===>> tu mets 0 à sa propriété index
puis pareil un optionbutton Q ===>> avec 1 en index
...
tu en mets ainsi 4, le dernier étant Q avec index 3

et ce code :


Private Sub Form_Activate()
  For i = 0 To 3
    Q(i).BackColor = vbYellow
    Q(i).Value = False
  Next
End Sub

Private Sub Q_Click(Index As Integer)
 For i = 0 To 3
   If Q(i).Value = True Then
     Q(i).BackColor = vbRed
   Else
     Q(i).BackColor = vbYellow
   End If
 Next
End Sub




____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 210 internautes nous ont dit merci ce mois-ci

Commenter la réponse de ucfoutu
Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
0
Merci
Merci de ta réponse ucfoutu !

Je confirme, je suis bien sous VB6.

Et pour ce que m'indique, ce serait en effet la meilleure solution.
Quand faut y aller, faut y aller hein !

Comme je l'ai dit ça fait longtemps que je n'ai pas touché le VB, dans l'immédiat, c'est encore trop flou dans mon esprit, mais à force ça va revenir (j'espère !)

Si vraiment, j'ai de fortes lacunes, je ferai appel aux grosses têtes de ce forum !

A+


Cordialement, Masterfree
Commenter la réponse de cs_masterfree
Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
0
Merci
Génial ton exemple !
Mais je voulais savoir la proc "Form_Activate()", c'est vraiment utile ça ?

Cordialement, Masterfree
Commenter la réponse de cs_masterfree
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
Je ne l'ai mis là que pour l'exemple.
Tu peux t'en passer si, en mode création, tu les mets tous en jeune et non cochés.


____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
0
Merci
Je pense avoir pigé !
C'est une initialisation en qq sorte !

Je vais me pencher sur ton exemple qui m'est d'une grande aide !

Cordialement, Masterfree
Commenter la réponse de cs_masterfree
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Modérateur
Dernière intervention
11 avril 2018
214
0
Merci
Tu découvres tout simplement les groupes de contrôles indexés. C'est puissant et très pratique.
Tu as bien compris que tu peux à tout moment et de n'importe où dans ton code te référer à un élément du groupe par son index ?
Exemples (farfelus, mais exemples) :
Private Sub Command1_Click()
  Q(2).Visible = False
  Q(3).Caption = "bonjour"
  Q(3).Move 0, 0
  Q(3).BackColor = RGB(0, 125, 125)
  Q(3).ForeColor = vbWhite
End Sub


Bonne découverte.
____________________
Réponse exacte ? => "REPONSE ACCEPTEE" pour faciliter les recherches d'autres forumeurs.
Pas d'aide en ligne installée ? ==> ne comptez pas sur moi pour simplement vous dire ce qu'elle contient
Commenter la réponse de ucfoutu
Messages postés
55
Date d'inscription
mercredi 6 avril 2005
Statut
Membre
Dernière intervention
14 juillet 2012
0
Merci
Oui j'ai très bien compris le processus, mais, dans mon prg, cela ne va pas me servir énormément, quoique ???

Je vais voir ça de plus près.

Tes explications sont limpides et je suis certain que je saurais où m'adresser en cas de défaillances intellectuelles en VB !

A bientôt et merci pour tout.


Cordialement, Masterfree
Commenter la réponse de cs_masterfree