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

Lazarus Pascal Discussion :

Modifier l'évènement d'un composant [Lazarus]


Sujet :

Lazarus Pascal

Mode arborescent

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Invité
    Invité(e)
    Par défaut Modifier l'évènement d'un composant
    Bonjour,

    Dans un TmySpeedButton hérité d'un TSpeedButton, je voudrais modifier le comportement de l'évènement OnMouseEnter.

    Je crée un TmySpeedButton dont j'aimerais que l'évènement MouseOver soit éludé : Par exemple, qu'il affiche "d'abord" showmessage('interne');.

    Donc un survol de mySpeedButton1 avec dans la Form
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    procedure TForm1.mySpeedButton1MouseEnter(Sender: TObject);
    begin
      showmessage('externe');
    end;
    afficherait d'abord 'interne' (modification de OnMouseEnter) puis ensuite 'externe' (code dans l'inpecteur d'objet).

    Actuellement je crée une procedure DoMouseEnter(const Value: TNotifyEvent); virtual; (protected)
    Mais comment je la relie à l'évènement d'origine ? J'ai essayé quelque chose dans ce genre là
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    type
      TmySpeedButton = class(TSpeedButton)
      private                       
      { Private declarations }
       FOnMouseEnter: TNotifyEvent;
       protected
        { Protected declarations }
        procedure SetOnMouseEnter(const Value: TNotifyEvent);
        procedure DoMouseEnter(const Value: TNotifyEvent); virtual;
      published
        { Published declarations }
        property OnMouseEnter: TNotifyEvent read FOnMouseEnter write SetOnMouseEnter;
       //Au départ "naïvement" property OnMouseEnter: TNotifyEvent read FOnMouseEnter write DoMouseEnter;
      end;
    Si cette base déclarative est bonne (faut-il redéclarer le FOnMouseEnter: TNotifyEvent; et dans le cas contraire ?), comment relie-t-on alors les évènements ?

    Cordialement. Gilles
    Dernière modification par Invité ; 29/09/2010 à 12h48.

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

Discussions similaires

  1. [SWING] Modifier l'apparence de certains composants
    Par rprom1 dans le forum AWT/Swing
    Réponses: 14
    Dernier message: 21/06/2006, 19h41
  2. Comment est géré l'événement OnTime du Composant TTimer?
    Par Arnaud-h dans le forum C++Builder
    Réponses: 3
    Dernier message: 02/06/2004, 17h10
  3. Réponses: 4
    Dernier message: 27/05/2004, 15h00
  4. Modifier un événement dans le code
    Par HT dans le forum Langage
    Réponses: 6
    Dernier message: 20/06/2003, 09h46

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