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

C++Builder Discussion :

OnMouseDown du composant parent


Sujet :

C++Builder

  1. #1
    Membre confirm�
    Profil pro
    Inscrit en
    F�vrier 2004
    Messages
    83
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : F�vrier 2004
    Messages : 83
    Par d�faut OnMouseDown du composant parent
    Bonjour tout le monde.

    J'ai une question plut�t pour ceux qui aiment les composants cr��s dynamiquement :

    J'ai une class XXX : public TPanel o� j'ai un DYNAMIC void __fastcall MouseDown

    Dans la partie public : J'ai une d�claration de TImage *image;

    Lors de la cr�ation de la class XXX , j'ai bien les panels qui sont cr��s et lorsque je clique sur les panels : aucun probl�me.. J'ai une alerte qui s'affiche (ShowMessage plac� dans le code de
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    void __fastcall XXX::MouseDown (TMouseButton Button, TShiftState Shift, int X, int Y)
    {
     
      ShowMessage(this->id);
    }
    )

    Cependant lorsque j'ai une image dans le panel, Le click ne marche plus !. Vu qu'elle vient sur le panel.

    Malgr� que j'ai fais : XXX->image->OnMouseDown = XXX->OnMouseDown
    le click sur l'image ne marche pas.

    Ma question : Comment faire pour que l'image soit transparente au niveau des clicks ?

    Merci

  2. #2
    Membre chevronn� Avatar de winow
    Inscrit en
    Novembre 2004
    Messages
    669
    D�tails du profil
    Informations personnelles :
    �ge : 60

    Informations forums :
    Inscription : Novembre 2004
    Messages : 669
    Par d�faut
    Bonjour

    A mettre dans l'evenement Image1MouseDown du TImage.
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
     
    Panel1MouseDown(Sender, Button, Shift, 0, 0);
    A++

  3. #3
    Membre Expert

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    1 412
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 412
    Par d�faut
    Salut !

    Ne pas confondre MouseDown et l'�v�nement OnMouseDown qui sont deux choses distinctes !!!

    MouseDown est le m�canisme qui g�re une propri�t� sous cette forme :

    //traitement en amont de l'appel
    if(FOnMouseDown != NULL) FOnMouseDown(this, ...);
    //et/ou traitement en aval de l'appel
    OnMouseDown est la propri�t� vue par l'utilisateur (public mais pas forc�ment published) et FOnMouseDown la propri�t� stock�e (private) � ce stade comparable � un pointeur vers fonction.

    Pour la classe TPanel, il n'est pas n�cessaire de red�finir MouseDown puisqu'il est h�rit� des classes dont il d�rive (en particulier de TControl) sauf si on doit y effectuer des op�rations propres � cette classe.

    Dans ton cas, si cette classe reste confidentielle (un simple classe dont tu es l'unique utilisateur) dans ce cas il serait plus simple de lui d�clarer une OnMouseDown et de lui affecter dans son constructeur.
    Il devient alors possible d'affecter la dite m�thode � l'�v�nement de l'image (puisque != NULL)

    A plus !

Discussions similaires

  1. R�ponses: 4
    Dernier message: 31/05/2014, 17h58
  2. [Flex4] Appel de fonction d'un composant parent � partir de l'enfant
    Par tlafont2607 dans le forum Flex
    R�ponses: 2
    Dernier message: 06/09/2013, 09h58
  3. R�cup�rer une property d'un composant parent
    Par zooffy dans le forum ASP.NET
    R�ponses: 7
    Dernier message: 16/04/2008, 12h16
  4. [onDblClick] ex�cuter l'�v�nement du composant parent
    Par xenos dans le forum Composants VCL
    R�ponses: 3
    Dernier message: 15/05/2006, 13h49
  5. Composant perso dispara�t lors du redimensionnement du composant parent
    Par GENERYS dans le forum Agents de placement/Fen�tres
    R�ponses: 5
    Dernier message: 05/10/2005, 22h07

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