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

Langage Delphi Discussion :

Passer une procédure en paramètre ?


Sujet :

Langage Delphi

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 33
    Points : 28
    Points
    28
    Par défaut Passer une procédure en paramètre ?
    J'aimerais transmettre ma procedure AfficherProduit à ma méthode InitNouveauBouton, mais je n'y arrive pas...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    procedure TfraChoix.AfficherProduit(Sender: TObject);
    var
      frmReception: TfrmReception;
    begin
      frmReception := TfrmReception.Create(Self, TOutlookButton(Sender).Tag);
      try
        frmReception.ShowModal
      finally
        frmReception.Release;
      end;
    end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    constructor TfraChoix.Create(AOwner: TComponent);
    begin
      inherited;
      FDataOutlookBar.InitNouveauBouton(AfficherProduit);
    end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    procedure TDataOutlookBar.InitNouveauBouton(...???? );
    begin
      obbBouton := TOutlookButton.Create(FOutlookBar);
      obbBouton.OnClick := AfficherProduit;
    end;
    Merci d'avance !

  2. #2
    Membre expérimenté
    Avatar de Bloon
    Homme Profil pro
    Consultant Freelance
    Inscrit en
    Avril 2002
    Messages
    467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant Freelance
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2002
    Messages : 467
    Points : 1 339
    Points
    1 339
    Par défaut
    Il s'agit d'un TNotifyEvent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    procedure TForm1.AfficherNouveauProduit(Sender: TObject);
    begin
      showMessage('click !');
    end;
     
    procedure TForm1.InitNouveauBouton(p: TNotifyEvent);
    begin
      button1.OnClick := p;
    end;
     
    procedure TForm1.FormCreate(Sender: TObject);
    begin
      InitNouveauBouton(AfficherNouveauProduit);
    end;
    Bloon

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    33
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 33
    Points : 28
    Points
    28
    Par défaut
    merci !

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

Discussions similaires

  1. [2005] Procédure passer une liste en paramètre
    Par thorgal1612 dans le forum Développement
    Réponses: 4
    Dernier message: 22/03/2013, 13h17
  2. Passer une procédure en paramètres
    Par FamiDoo dans le forum Windows Forms
    Réponses: 5
    Dernier message: 17/02/2008, 14h41
  3. Comment passer une procédure en paramètre ?
    Par gudul dans le forum Langage
    Réponses: 4
    Dernier message: 30/09/2005, 13h57
  4. Réponses: 1
    Dernier message: 15/04/2005, 11h30
  5. [Conception] Passer une fonction en paramètre
    Par pejay dans le forum Langage
    Réponses: 9
    Dernier message: 09/12/2004, 13h58

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