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

Langage Delphi Discussion :

définir une méthode par défaut


Sujet :

Langage Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut définir une méthode par défaut
    bonjour,

    je me demandais s'il existe un moyen pour définir sous delphi (<= d2006) une méthode par défaut comme pour les propriétés tableau

    style:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    type
    TToto = class
    published
        procedure myProc(var varParams: Variant);
    end;
    ..
    myToto:=TToto.Create;
    myToto(50) au lieu de myToto.myProc(50)
    merci par avance pour vos suggestions
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  2. #2
    Membre Expert
    Avatar de Dr.Who
    Inscrit en
    Septembre 2009
    Messages
    980
    Détails du profil
    Informations personnelles :
    Âge : 46

    Informations forums :
    Inscription : Septembre 2009
    Messages : 980
    Par défaut
    mmm non on ne peu.

    pas.


    ça ne fonctionne que pour les propriétés tableaux.
    mais rien ne t'empeche (à tester) de faire sur entiers uniquement :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    type
      TMaClass = class
      private
        function GetProc(const Value: integer): extended;
      public
        property Proc[Value: integer] : extended read getProc; default;
      end;
     
     
    function TMaClass.GetProc(const Value: integer): extended;
    begin
      result := Value * sqr(Pi);
    end;

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    begin
      R := MaClass[50]; // 50 * Pi²
    end;

    ha ... essaye en mettant "default;" derrière la proc (ne fonctionnera peut être pas).
    [ Sources et programmes de Dr.Who | FAQ Delphi | FAQ Pascal | Règlement | Contactez l'équipe ]
    Ma messagerie n'est pas la succursale du forum... merci!

  3. #3
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ha ... essaye en mettant "default;" derrière la proc (ne fonctionnera peut être pas).
    déjà testé sans succès...(le compil a lu la doc lui aussi )
    pour le reste je teste ta 1ere proposition
    @+
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  4. #4
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    Voir le code de la TStrings\TStringList dans Classes.pas
    C'est très éducatif au sujet la propriété par défaut, mais c'est juste pour une propriété !

    Après il reste toujours le mode non objet

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    procedure myToto(var varParams: Variant);
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Rédacteur
    Avatar de omen999
    Profil pro
    Inscrit en
    Février 2006
    Messages
    1 302
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 1 302
    Par défaut
    finalement, c'est une impasse car la propriété doit être publiée et c'est incompatible avec le type array imposé par la directive default

    Après il reste toujours le mode non objet
    mmm, le bouzin doit être instancié dans un serveur com créé on-the-fly donc c'est pas top moumoute mais je garde ton code il est collector
    merci pour vos réponses
    nomen omen, nemo non omen - Consultez la FAQ VBScript et les cours et tutoriels VBScript
    le plus terrible lorsqu'une voiture renverse un piéton, c'est que ce sont les freins qui hurlent. (ramón)
    pas de questions techniques par mp

  6. #6
    Expert éminent
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    14 086
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 14 086
    Par défaut
    Ah, tu rajoutes en plus le published, tu veux faire quoi, tu voudrais pas lancer une méthode en fonction de son nom ou un truc du genre ?
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. [XL-2007] VBA: Définir une valeur par défaut pour un range d'activeX combobox
    Par redhotchilipeppers dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 31/07/2014, 20h22
  2. Définir une valeur par défaut pour un champ many2one ?
    Par jmbinformatique dans le forum Odoo (ex-OpenERP)
    Réponses: 1
    Dernier message: 14/02/2014, 10h42
  3. [Débutant] Définir une valeur par défaut d'une propriété
    Par Rainui dans le forum VB.NET
    Réponses: 15
    Dernier message: 10/01/2013, 22h58
  4. [Tomcat 6] Définir une webapp par défaut
    Par bakka dans le forum Tomcat et TomEE
    Réponses: 10
    Dernier message: 15/10/2010, 11h11

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