IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Forms Discussion :

Parcourir les X Picturebox de la form


Sujet :

Windows Forms

  1. #1
    Membre habitué Avatar de Roromix
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 182
    Points : 139
    Points
    139
    Par défaut Parcourir les X Picturebox de la form
    Bonjour,

    Je souhaiterai appliquer un changement à toutes mes picturebox quand je clique sur un bouton. Comment faire ?


    Je voudrai aussi pouvoir detecter quand on clique sur un picturebox sans creer un evenement Click a tous mes picturebox car j'en ai énormement.

  2. #2
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    sujet souvent traité, et encore recemment avec des exemples

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    for each ctrl as control in me.controls
      if typeof ctrl is picturebox
        dim p as picturebox = directcast(ctrl,picturebox)
        'faire ton traitement sur p
      end if
    next


    pour gérer des evenements sur plusieurs choses il faut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    addhandler objet.evenement, addressof nom_de_la_sub
    ensuite le paramètre sender contient l'objet qui a déclenché l'évènement
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Membre habitué Avatar de Roromix
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 182
    Points : 139
    Points
    139
    Par défaut
    Je le met ou le addhandler ?

  4. #4
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    soit au moment ou tu créé tes picturebox si tu les créé dynamiquement

    soit à l'ouverture de la fenetre (= soit dans le sub new soit dans le form_load)


    il est aussi conseillé de faire les removehandler à la fermeture de la fenetre (form_closed ou sub dispose)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Membre habitué Avatar de Roromix
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 182
    Points : 139
    Points
    139
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
            For Each ctrl As Control In Me.Controls
                If TypeOf ctrl Is PictureBox Then
                    Dim p As PictureBox = DirectCast(ctrl, PictureBox)
                    p.Image = Nothing
                End If
            Next
    Ca ne fonctionne pas. Il a fallu que je remplace Me.Controls par Me.Table1.Controls étant donné que mes PictureBox se trouvent dans ce TableLayoutPanel. Mais elles se trouvent aussi dans un deuxieme nommé Table2. Faut-il faire un for each pour chaque tableau ?


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    AddHandler PictureBox.Click, AddressOf Clicdepartie
    PictureBox.Click -> Une référence à un membre non partagé requiert une référence d'objet
    Je ne comprend pas

  6. #6
    Expert éminent sénior Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 154
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 154
    Points : 25 072
    Points
    25 072
    Par défaut
    le addhandler il faut le faire sur chaque picturebox
    donc à mettre dans un for each aussi

    si tu as que 2 tablelayoutpanel à parcourir, tu peux faire 2 boucles
    sinon il est possible de faire une procédure récursive à partir de me et ca trouvera alors tous les picturebox
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  7. #7
    Membre habitué Avatar de Roromix
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Calvados (Basse Normandie)

    Informations forums :
    Inscription : Décembre 2005
    Messages : 182
    Points : 139
    Points
    139
    Par défaut
    Merci beaucoup pour ton aide. Tout fonctionne correctement

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Parcourir les elements d'une ligne crée dynamiquement dans un FORM
    Par redabadache3 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 23/12/2008, 14h30
  2. Parcourir les controls d'une form
    Par zit_zit dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 01/10/2008, 18h59
  3. Réponses: 4
    Dernier message: 26/08/2007, 13h15
  4. parcourir les forms et les objets d'une applications
    Par aadelfa dans le forum C++Builder
    Réponses: 32
    Dernier message: 21/12/2006, 13h54
  5. Parcourir les Form pour les fermer
    Par David dans le forum Delphi
    Réponses: 8
    Dernier message: 04/12/2006, 13h29

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo