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 :

Savoir si cette class d�rive de ou est un TComponent


Sujet :

C++Builder

Vue hybride

Message pr�c�dent Message pr�c�dent   Message suivant Message suivant
  1. #1
    Membre �clair�
    Homme Profil pro
    Consultant technique
    Inscrit en
    Juillet 2002
    Messages
    519
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activit� : Consultant technique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 519
    Par d�faut Savoir si cette class d�rive de ou est un TComponent
    Bonjour,

    J'ai un probl�me peu commum. J'ai un AnsiString qui m'indique le type d'un objet (exemple "TBitmap", "TFont", "TButton", ...).

    Je n'ai que �a. C'est � dire un ansistring qui me fournit le nom de la class.

    Et je voudrait pouvoir savoir si cette class est un d�riv� de component (quelque soit le degr�).

    Je n'ai donc pas trouv� de solution pour l'instant. Je pensais trouver une m�thode pour cr�er une class depuis nom nom pour ensuite utiliser InheritsFrom. Je pense (mais je n'en suis pas certain) que toute les class sont au moins des TObject.

    En fait, je n'ai qu'acc�s au PTypeInfo dont je regarde si le Kind == tkClass et il me reste le Name.

    Merci

    Edit :
    J'ai trouv� quelques chose qui est presque bon mais qui plante :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
       if (GetClass(Item->Data->TypeInfo->Name)->InheritsFrom(GetClass("TComponent")))

  2. #2
    Membre �clair�
    Homme Profil pro
    Consultant technique
    Inscrit en
    Juillet 2002
    Messages
    519
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activit� : Consultant technique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Juillet 2002
    Messages : 519
    Par d�faut
    J'ai trouver une solution :
    Code : S�lectionner tout - Visualiser dans une fen�tre � part
    1
    2
    3
    4
    5
    6
    7
    if ((Item->Data != NULL) && (Item->Data->TypeInfo->Kind == tkClass))
       {
       if (AnsiString("TJvInspectorComponentItem").AnsiCompare(Item->ClassName()) == 0)
          {
          dynamic_cast<TJvInspectorComponentItem*>(Item)->AddOwner(Form1);
          }
       }

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

Discussions similaires

  1. Savoir si une classe est instanci�e ?
    Par Sancha dans le forum Langage
    R�ponses: 3
    Dernier message: 09/11/2009, 14h15
  2. R�ponses: 3
    Dernier message: 23/09/2009, 09h52
  3. JavaDoc : cette classe est elle bien comment�e ?
    Par jmnicolas dans le forum Langage
    R�ponses: 4
    Dernier message: 04/09/2008, 11h36
  4. R�ponses: 2
    Dernier message: 29/06/2006, 16h33
  5. [VB6] Savoir depuis VB, si un document Excel est ouvert
    Par Argonz dans le forum VB 6 et ant�rieur
    R�ponses: 5
    Dernier message: 12/11/2002, 08h16

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