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

Composants VCL Delphi Discussion :

Composant dérivé de TQuery


Sujet :

Composants VCL Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 182
    Par défaut Composant dérivé de TQuery
    Je suis en train de créer une classe dérivée de TQuery avec deux sous-classes qui dériveront de celle-ci. mais si je rajoute une function virtuelle dans la classe parente et que je l'override dans les deux classes enfants, j'ai une erreur :

    Méthode '<élément>' non trouvée dans la classe de base

    La classe parent :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    TPersoMereQuery = class(Tquery)
     private
      function getSQL : TStrings; virtual;
     .....
     published
      property SQL : TStrings read getSQL;
     ....
    une des classes enfant :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    TPersoEnfant1Query = class(TPersoMereQuery)
     private
      function getSQL : TStrings; override;
     .....

    Une idée? en fait je voudrait que en faisant un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    var q : TPersoMereQuery;
     ....
     
    q := TPersoEnfant1Query.create(nil);
    q.SQL.Add('SELECT * FROM TABLE_NAME');
    ça passe directement dans la fonction de la classe TPersoEnfant1Query et non dans la classe parent.

    merci.

  2. #2
    Rédacteur/Modérateur
    Avatar de Andnotor
    Inscrit en
    Septembre 2008
    Messages
    5 941
    Détails du profil
    Informations personnelles :
    Localisation : Autre

    Informations forums :
    Inscription : Septembre 2008
    Messages : 5 941
    Par défaut
    Si ces déclarations sont dans des unités différentes, déplace la fonction dans la section Protected. Private n'est accessible que si les déclarations sont dans la même unité .

  3. #3
    Membre confirmé
    Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2007
    Messages
    182
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Juillet 2007
    Messages : 182
    Par défaut
    Merci !
    Je n'avais pas pensé à ça et c'est tout bon!

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

Discussions similaires

  1. Utilisation d'un composant dérivé d'un TEdit
    Par dleu dans le forum Delphi
    Réponses: 24
    Dernier message: 24/07/2007, 17h32
  2. [DELPHI6] et composant dérivé
    Par Desraux dans le forum Delphi
    Réponses: 3
    Dernier message: 30/05/2007, 18h52
  3. Aide sur l'utilisation du composant TupdateSQL avec Tquery
    Par mezianewanadoo dans le forum Bases de données
    Réponses: 1
    Dernier message: 24/06/2006, 18h17
  4. Création d'un composant dérivé
    Par leycho dans le forum C++Builder
    Réponses: 4
    Dernier message: 20/12/2005, 17h22
  5. [TChart] Composant dérivé
    Par Linkin dans le forum Composants VCL
    Réponses: 2
    Dernier message: 03/01/2005, 16h34

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