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

EDI Delphi Discussion :

[héritage] Redonner les propriétés de l'ancêtre


Sujet :

EDI Delphi

  1. #1
    Membre confirmé
    Avatar de Manopower
    Inscrit en
    Décembre 2003
    Messages
    516
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 516
    Points : 453
    Points
    453
    Par défaut [héritage] Redonner les propriétés de l'ancêtre
    Bonjour, j'ai une Form1 de type TForm.
    - je change sa couleur, je la met jaune
    - je change ses bordures bsSingle

    Je créé une deuxième form (FormAncetre) que je veux mettre en tant qu'ancêtre sur toute mon application
    - cette fiche est de couleur bleue ciel
    - cette fiche n'a pas de bordures (bsNone)

    j'ouvre Form1, dans le .pas je modifie Form1 Class(FormAncetre);
    je vais dans le .dfm, je modifie "Object" par "Inherited"

    jusque là tout va bien, mais ma form1 reste jaune avec des bordures car il garde les propriétés modifiée en conception avant l'héritage. Je pourrais bien remettre à la main borderstyle = BsNone et Color = $00F9F2F3 mais cette solution ne me plait pas, puisque si un jour ma form ancêtre devient verte pomme, je devrais revenir sur toutes mes fiches, ce que je voulais éviter !

    Pourriez vous me dire donc, dans ma form1, après avoir modifié l'héritage, comment lui dire "tu prends toutes les propriétés par défaut de ton ancêtre" et ceci en conception, sans code dans l'idéal !

    Merci d'avance !

  2. #2
    Membre éclairé
    Avatar de MD Software
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 613
    Points : 680
    Points
    680
    Par défaut
    Tes modifications sont étranges car tu les fait directement dans les fichiers au lieu d'utiliser l'EDI. Mais bon, si tu veux faire comme ça, tu peux toujours supprimer l'affectation des propriétés (couleur et style) de ta classe fille pour qu'elle prenne celle de l'ancètre.
    MD Software
    ---------------------------
    F.A.Q. Delphi - Cours Delphi - Composants Delphi - Sources Delphi

  3. #3
    Membre expérimenté
    Avatar de Bloon
    Homme Profil pro
    Consultant Freelance
    Inscrit en
    Avril 2002
    Messages
    467
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant Freelance
    Secteur : Conseil

    Informations forums :
    Inscription : Avril 2002
    Messages : 467
    Points : 1 339
    Points
    1 339
    Par défaut
    Si je comprends bien ta question, mets-toi sur Form1, fais click droit dedans puis "Revenir à hérité"

    Bloon
    A lire : Les règles du club
    Delphi : La FAQ - Articles

  4. #4
    Membre expérimenté

    Homme Profil pro
    Inscrit en
    Mars 2004
    Messages
    897
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Marne (Champagne Ardenne)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2004
    Messages : 897
    Points : 1 561
    Points
    1 561
    Par défaut
    Delphi prévoit à cet effet la possibilité d'ajouter ta fiche ancêtre au référentiel. (voir l'item dans le menu contextuel de la fiche ancêtre en design time).

    Une fois ajouté au référentiel et en passant par le menu nouveau, tu pourras créer une fiche dérivant de celle ajoutée au référentiel en cochant "Hériter".

    Toute modification sur la fiche ancêtre sera automatiquement reportée sur la ou les fiches enfants. Par contre tu ne pourras pas supprimer un élément hérité sur la fiche enfant.

    Cette méthode t'éviteras toutes les manipulations que tu as décrit.

    Cordialement
    Pensez à utiliser les tags dans le titre.
    Avant de poser une question reportez-vous à la FAQ Delphi
    Respectez les règles du forum.

  5. #5
    Membre confirmé
    Avatar de Manopower
    Inscrit en
    Décembre 2003
    Messages
    516
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 516
    Points : 453
    Points
    453
    Par défaut
    Merci à tous,
    hélas je fais ces modifications sur un projet existant, les fiches sont déjà créées, je ne peux donc pas créer les fiches à partir de mon ancêtre.

    Revenir à l'hérité fonctionne bien j'ai l'impression

    j'ai aussi osé une autre solution à laquelle je n'avais pas pensé : Dans le .dfm je supprime les lignes borderstyle et color, ainsi, les valeurs par défaut de l'ancêtre reviennent correctement !

    merci !

  6. #6
    Membre confirmé
    Avatar de Manopower
    Inscrit en
    Décembre 2003
    Messages
    516
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 516
    Points : 453
    Points
    453
    Par défaut
    D'une manière plus générale, dans l'EDI Delphi, comment met-on une propriété "par défaut" d'un objet dans l'inspecteur d'objet, si on ne sait plus quelle était la valeur et qu'on ne veut pas rechercher dans le code ?

    j'ai bien essayé de supprimer tout bêtement, mais c'est pas ça

Discussions similaires

  1. Réponses: 2
    Dernier message: 04/04/2013, 12h45
  2. Réponses: 19
    Dernier message: 29/05/2007, 16h21
  3. Comment retrouver les propriétés d'un fichier ?
    Par JuanLopez1966 dans le forum x86 32-bits / 64-bits
    Réponses: 1
    Dernier message: 01/09/2004, 16h34
  4. Informations sur un exe (dans les propriétés windows)
    Par SteelBox dans le forum Windows
    Réponses: 6
    Dernier message: 06/07/2004, 18h20
  5. [VBA] Les propriétés de cellule dans Excel
    Par Kylen dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 05/07/2004, 23h02

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