begin process at 2012 02 11 11:09:08
  Trouver un code source :
 
dans
 
Accueil > Forum > 

VB.NET et VB 2005

 > 

Windows

 > 

Formulaire / Winforms / Controls

 > 

boucle selective


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

boucle selective

samedi 23 juin 2007 à 07:23:08 | boucle selective

gillesrun

Membre Club

Bonjour , j'ai un petit soucis avec la boucle " For each " , voila mon code:

Dim ctl as Control

For Each ctl In Me.Controls
If Ctl.GetType Is GetType(label) Then
Label.BackColor = System.Drawing.Color.Black
( vb me demande de declarer label.backcolor, hors je voudrais que cela soit generalisé a l'ensemble des labels )

end if
Next

Je possede plusieur label qui sont avec la declaration  " click " , c'est a dire quand je clic dessus , il change de couleur.
Hors avec cette boucle , quand je clic sur un label , tous changent de couleur alors que je ne voudrais que seul le label cliqué change.
Et le probleme , c'est que j'ai besoin de faire une boucle car il y a beaucoup de label.

Merci d'avance


samedi 23 juin 2007 à 07:50:59 | Re : boucle selective

jmfmarques

Membre Club
Bonjour,

Tu fais une boucle par laquelle tu extrais chaque "ctrl'

Remplace donc Label.BackColor
pat
 ctrl.BackColor
samedi 23 juin 2007 à 07:53:26 | Re : boucle selective

jmfmarques

Membre Club
Et si tu ne veux cjanger que le label sur lequel tu cliques : pourquoi ne pas te référer au seul contrôle actif (ton label) ?
samedi 23 juin 2007 à 08:25:20 | Re : boucle selective

jmfmarques

Membre Club

A vérifier (je ne connais pas VB.Net) :
le label sur lequel tu cliques devrait être le :

System.Windows.Forms.Application.ActiveForm.ActiveControl
samedi 23 juin 2007 à 08:38:02 | Re : boucle selective

jmfmarques

Membre Club

Et si (pour une raison quelconque) tu passes par ta boucle, ça devrait ressembler à :

For Each ctl In Me.Controls
  If Ctl.name = system.Windows.Forms.Application.ActiveForm.ActiveControl.name Then
  ctrl.BackColor = System.Drawing.Color.Black
end if
Next

samedi 23 juin 2007 à 09:22:14 | Re : boucle selective

gillesrun

Membre Club
Je te remercie pour ton aide mais j'ai testé ton code mais il me dit que :

System.Windows.Forms.Application.ActiveForm 

n'est pas un membre de system.windows.forms.application .

gilles

samedi 23 juin 2007 à 09:41:55 | Re : boucle selective

casy

Membre Club

Si resume bien, lorsque tu clique sur un label spécifique, tu veux que celui-ci change de couleur ?

Déjà regarde au niveau de l'évènement click de ton label. Tu as un paramètre Sender qui se trouve etre le controle à l'origine du click.
Il te suffit de mettre le code suivant dans l'évènement click du label :

Dim lbl as Label = CType(sender , Label)
lbl.Backcolor = Color.Black



---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
samedi 23 juin 2007 à 09:48:03 | Re : boucle selective

gillesrun

Membre Club
merci casy,

mais j'ai plusieur label , une trentaine.  Je sais changer la couleur pour  un label quand on clic dessus mais pour une question de confort, je voudrais utiliser la boucle.  c'est a dire que si je clic sur un label , seul le label cliqué change de couleur.

gilles
samedi 23 juin 2007 à 10:00:26 | Re : boucle selective

casy

Membre Club

je ne vois pas ou une boucle va t'ammener du confort, le paramètre Sender dans le code que j'ai donné, représente le seul et unique controle sur lequel tu as cliqué à l'instant t ou l'évènement a été déclenché par le click.

Je ne vois pas l'interet sur un click de passer en revue l'ensemble des controles pour trouver celui qui a été clické puisque l'info nous est directement passée en clair.


---- Sevyc64  (alias Casy) ----
# LE PARTAGE EST NOTRE FORCE #    [ Lien ]
samedi 23 juin 2007 à 10:11:46 | Re : boucle selective

gillesrun

Membre Club
C'est vrai , ton code marche , mais je suis obligé de le mettre dans les evenements click de chaque label.........j'en ai une trentaine et je vais  encore en  rajouter autant....voila pourquoi je voulais utiliser une boucle , pour ne pas  avoir à taper chaque label .

1 2

Cette discussion est classée dans : boucle, label, for, ctl, selective


Répondre à ce message

Sujets en rapport avec ce message

Boucle For Each sur les contrôles [ par DAVIMIKA ] Bonjour,Je voudrais à l'aide d'une boucle mettre le libellé de mes case à cocher en rouge lorsqu'il sont cocher, mais je n'arrive pas imbriquer les di Utiliser une boucle For pour remplir un label [ par bugger31 ] Bonjour, J'essaye de réaliser une application qui me retourne un tableau en résultat. Je désire faire apparaître les résultats de ce tableau dans un l Boucle For (je pense) [ par Solomein ] Salut à tous! Alors voilà je débute en VB6 et j'ai un petit soucis (rien de bien méchant) je voudrais comprendre ce que je n'ai pas fait. J'ai ceci: T Boucle For avec des Dates avec VBA pour Excel [ par antoine171074 ] Bonjour, je recherche à faire des boucles For avec des Dates. C'est à dire qu'en argument de la boucle je voudrais avoir une date. L'idée : [size=5 PROBLEM BOUCLE FOR [ par tayebchemingui ] [b]bonjour[/b] J'utilise le VB6 il faut je fais un boucle fort qui parcours toute le datagrid qui contient des données de la base de donnée MSQL adobe Boucle avec des Labels [ par onix64 ] Bonjour, Je bataille avec un tout petit problème de rien du tout mais qui pour moi débutant m'empêche d'avancer. J'ai bien trouvé des exemples de co Optimisation double boucle imbriquée [ par Nitrakz ] Bonjour, J'ai créer une fonction qui contient 2 For imbriquer pour le parcours d'un tableaux, mon problème est que cette fonction est beaucoup trop l [Catégorie modifiée VB6 -->.Net] mettre un sleep dans une boucle [ par gudulle99 ] bonjour je viens avec une question de debutant en fait j'essaie d'afficher le nbr de boucle dans un label je voulais pouvoir lire la valeur de a m VB Excel: Boucle For Next ne s'arrête pas [ par djokalif ] Bonjour, Je suis confronté au même problème que Hadriennoel mais j'ai du mal à mettre en application les conseil de Jack. Je conçois un planing: Dan Boucle for next [ par Mikmak47 ] Bonjour, Je dispose de 3 colonnes: freq, rang, et moyenne. Dans une cellule à part je rentre la valeur d'une freq_res, et j'aimerais avec une boucle


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,452 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales