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

 Delphi Discussion :

Utiliser une class dans un autre form


Sujet :

Delphi

  1. #1
    Membre à l'essai
    Homme Profil pro
    Sans
    Inscrit en
    Octobre 2016
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Octobre 2016
    Messages : 16
    Points : 13
    Points
    13
    Par défaut Utiliser une class dans un autre form
    Bonjour

    Je m initie (encore) à la POO et avec quelques difficultés.
    pour des raisons evidentes de visibilité, j ai décidé de regrouper toutes me fonctions, classes et objets une même unité mais je n arrive pas à acceder à certaines class depuis ma form principale dans laquelle j'effectue tous les traitements.

    Dans une unité 'Fonctions' je fais
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     TNombre = class
        Index: integer;
        Valeur: double;
        constructor Create(AIndex: integer; AValeur: double);
      end;
     
    constructor TNombre.Create(AIndex: integer; AValeur: double);
    begin
      Index := AIndex;
      Valeur := AValeur;
    end;
    dans ma form principale j'ajoute mon unité Fonctions dans les uses et je tente de declarer ainsi
    J ai le message d erreur indicateur non declare

    Si la declaration se fait sur la form principale, pas de pb.

    Alors ma question : Comment acceder à la class Tnonbre depuis ma form principale alors que celle ci est declarée dans une autre unité ?

    Merci pour votre aide.

  2. #2
    Expert éminent sénior
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Points : 28 445
    Points
    28 445
    Par défaut
    le principe des unités est fort simple.

    pour accéder à un symbole d'une autre unité je dois déclarer celle-ci dans la clause Uses du source.

    cf http://tothpaul.free.fr/tips.php?pv_circular
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Membre habitué
    Homme Profil pro
    Chef de projets
    Inscrit en
    Août 2008
    Messages
    127
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2008
    Messages : 127
    Points : 195
    Points
    195
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    unit MaForm;
     
    interface
     
    uses //Partie 1
     
    type
       ....
     
    implementation
     
    uses //Partie 2
    Tu places ton uses (le nom de ton unité, dans ton cas fonction) dans la partie 1 (partie supérieur) si tu en as besoin pour définir une propriété, procédure ou fonction dans la déclaration de type. Sinon tu places ton uses en partie 2 (en dessous) si tu en as besoin dans l'implémentation de tes procédures et fonctions. Le fait de le déclarer en partie 2 optimise la compilation et évite des références circulaires.

  4. #4
    Membre à l'essai
    Homme Profil pro
    Sans
    Inscrit en
    Octobre 2016
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Sans

    Informations forums :
    Inscription : Octobre 2016
    Messages : 16
    Points : 13
    Points
    13
    Par défaut
    Merci pour vos réponses.

    Je pensais qu il suffisait de declarer l unité dans les uses mais à ce que je vois je vais devoir me racler la soupière car apres une premièere lecture, je n ai pas tout saisi...
    Mais il est tard...On va dire ça

  5. #5
    Membre expérimenté
    Avatar de retwas
    Homme Profil pro
    Développeur Java/Delphi
    Inscrit en
    Mars 2010
    Messages
    698
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Développeur Java/Delphi
    Secteur : Finance

    Informations forums :
    Inscription : Mars 2010
    Messages : 698
    Points : 1 608
    Points
    1 608
    Billets dans le blog
    4
    Par défaut
    Citation Envoyé par NewbieOnLine Voir le message
    Merci pour vos réponses.

    Je pensais qu il suffisait de declarer l unité dans les uses mais à ce que je vois je vais devoir me racler la soupière car apres une premièere lecture, je n ai pas tout saisi...
    Mais il est tard...On va dire ça
    Exactement, il suffit de déclarer l'unité dans les uses.

Discussions similaires

  1. [Débutant] Utiliser une classe dans un autre projet
    Par noftal dans le forum VB.NET
    Réponses: 10
    Dernier message: 12/11/2013, 17h22
  2. Utiliser une classe dans une autre
    Par weautus dans le forum Débuter avec Java
    Réponses: 15
    Dernier message: 28/07/2010, 16h18
  3. Utiliser une classe dans une autre
    Par Palca dans le forum ActionScript 3
    Réponses: 9
    Dernier message: 03/06/2009, 00h19
  4. Réponses: 4
    Dernier message: 25/07/2006, 16h30
  5. Utilisation d'une classe dans un autre fichier
    Par melotron dans le forum Général Python
    Réponses: 1
    Dernier message: 09/07/2006, 13h11

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