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 :

Sucharger une TShape


Sujet :

C++Builder

  1. #1
    Membre habitu�
    Profil pro
    Analyste programmeur
    Inscrit en
    Mars 2003
    Messages
    7
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Analyste programmeur

    Informations forums :
    Inscription : Mars 2003
    Messages : 7
    Par d�faut Sucharger une TShape
    salut
    j'ai un petit probleme c'est que je veux surcharger un TShape mais pas moyen de trouver comment. En fais ma surcharge ca veux dire ajouter un Caption donc c'est pour ecrire dans le TShape, j'ai trouver comment faire en delphi mais je veux le faire en c++ builder merci bcp de la reponse

  2. #2
    Membre averti

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    28
    D�tails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 28
    Par d�faut
    salut !!

    je veux surcharger un TShape
    Tu veux faire quoi exactement ?? Cr�er un nouveau composant VCL qui h�rite d'un TShape et impl�mente un systeme de caption ? Ou simplement cr�er une classe qui englobe un TShape et un TLabel (par exemple) et g�re leurs interactions et leus dispositions ... ou autre chose ?

  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 !

    En d�rivant de TShape, rajouter un pointeur sur un TLabel.
    Dans le constructeur il suffit de cr�er le TLabel, sans oublier d'affecter
    un Parent aux deux objets, pour ne pas dire le "bon" Parent. Probablement
    fixer Panel->TransParent sur true etc.

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    class TMyShape : public TShape
    {
    public :
    TLabel *Label;
    //Positions relatives du TLabel par rapport à celles du TShape
    int Ox;
    int Oy;
     
        __fastcall TMyShape(TComponent *Owner);
        __fastcall ~TMyShape();
        void __fastcall Paint();
    }
    Surcharger la m�thode Paint du TShape :

    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    void __fastcall TMyShape::Paint()
    {
    //Appel de la méthode Paint du TShape
    TShape::Paint();
    //Et on positionne le TLabel
    int x = Left + Ox; int y = Top + Oy;
    if((x != Label->Left) || (y != Label->Top))
        {
        Label->SetBounds(x,y, Label->Width, Label->Height);
        }
    }
    J'ai fait un essai pour d�placer l'objet final sur une form. La m�thode Paint
    ainsi faite, cr�e l'illusion que les deux objets sont parfaitement solidaires !

    A plus !

  4. #4
    Membre habitu�
    Profil pro
    Analyste programmeur
    Inscrit en
    Mars 2003
    Messages
    7
    D�tails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations professionnelles :
    Activit� : Analyste programmeur

    Informations forums :
    Inscription : Mars 2003
    Messages : 7
    Par d�faut
    merci bcp de ta reponse je vais tester tout de suite.

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. R�ponses: 1
    Dernier message: 03/03/2010, 15h06
  2. R�ponses: 10
    Dernier message: 24/04/2008, 15h38
  3. taille maximale d'une base de donnée paradox
    Par Anonymous dans le forum Paradox
    R�ponses: 5
    Dernier message: 14/02/2004, 17h39
  4. R�ponses: 8
    Dernier message: 16/04/2002, 16h20
  5. Je ne peux �tablir une connexion cliente sous Linux.
    Par Anonymous dans le forum CORBA
    R�ponses: 5
    Dernier message: 16/04/2002, 15h57

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