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 :

Appel à la Fonction Execute


Sujet :

Langage Delphi

  1. #1
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 346
    Points : 3 124
    Points
    3 124
    Par défaut Appel à la Fonction Execute
    Bonjour,
    question bête :

    Pourquoi n'a t on pas besoin de Create pour appeler un TOpenDialog ou un TColorDialog, mais seulement un Execute ?

    Peut on faire la même chose avec une classe dérivée d'un TForm ?

    A+
    Charly

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 468
    Points : 24 896
    Points
    24 896
    Par défaut
    Euh c'est TOpenDialog posé sur la Form ?
    Donc il y a une instance

    Et en réalité, si la méthode n'invoque pas self dans son corps, tu peux réussir à que cela fonctionne par contre les propriétés vont presque à coup sur provoquer une violation d'accès.
    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

  3. #3
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 346
    Points : 3 124
    Points
    3 124
    Par défaut
    d'accord, le Topendialog est dans le dfm de la fiche, mais ou est le Create ?

    c'est Delphi qui le fait automatiquement ?

    A+
    Charly

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 468
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    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 : 13 468
    Points : 24 896
    Points
    24 896
    Par défaut
    Oui comme pour les TControl (TComponent) c'est le Flux de la création de la TForm qui fait tout depuis la ressource DFM qui lui indique ce qu'il faut créer automatiquement et assure aussi la population des variables published par RTTI

    C'est le principe même du RAD d'ailleurs, avec le TDataModule pour y déposer ses TTable, TDatabase ... du moins au bon vieux temps de D4 ... avec les bases SQL mieux vaut gérer ses objets dynamiquement, les préparés finement et ne pas utiliser l'explorateur DB, le tout encapsulé par un ORM (pour ceux qui ont connu BOLD ou Mormot)


    Si tu utilise CreateNew pour créer ton héritier de TForm, tu constateras que rien n'est créé, c'est Create qui lance la gestion du Flux, tu as le source avec Delphi, cherche un truc genre ReadComponentRes, on est samedi, je n'ai pas Delphi sous la main.
    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
    Membre expert
    Avatar de Charly910
    Homme Profil pro
    Ingénieur TP
    Inscrit en
    Décembre 2006
    Messages
    2 346
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur TP
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 346
    Points : 3 124
    Points
    3 124
    Par défaut
    Ok, merci de répondre aussi un samedi !

    Bon Week End

    A+
    Charly

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 05/05/2010, 00h19
  2. Réponses: 7
    Dernier message: 08/04/2010, 16h10
  3. Appel de fonction et temps d'execution
    Par marco_fot_hxc dans le forum ASP
    Réponses: 2
    Dernier message: 18/05/2008, 20h50
  4. Réponses: 4
    Dernier message: 19/04/2004, 13h41
  5. Appeler une fonction avec/sans parenthèses
    Par haypo dans le forum Algorithmes et structures de données
    Réponses: 8
    Dernier message: 29/12/2002, 18h48

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