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

Lazarus Pascal Discussion :

Procédure non trouvée, dans la section interface de l'unité 2, qui est en uses de l'unité 1


Sujet :

Lazarus Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 940
    Billets dans le blog
    6
    Par défaut Procédure non trouvée, dans la section interface de l'unité 2, qui est en uses de l'unité 1
    Bonjour,

    Je déclare une procédure dans la section interface de l'unité 2, qui est en uses de l'unité 1.

    Sur la ligne d'un appel de cette procédure, l'IDE montre bien qu'elle est reconnue (procédure machin, unité 2), mais le compilateur bute avec le message "Error : identifier not found (nom de la procédure)"

    Mais qu'est-ce que j'ai fait de mal ? Qui m'en veut ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

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

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

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    difficile à dire sans voir le code
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  3. #3
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 940
    Billets dans le blog
    6
    Par défaut
    Certes !

    Mais Lazarus réserve quelques difficultés qui laissent pantois...

    J'ai par exemple eu un souci -non résolu- avec ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    constructor TDepasseLabel.Create(var aLabel: TLabel; ALongColor: TColor; ADepasseMode: TDepasseMode);
    begin
     inherited Create(ALabel.Owner);  
      //...
     aLabel:=self;
    end;
    qui plante ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    function TControl.GetText: TCaption;
    var
      len: Integer;
    begin
      // Check if GetTextBuf is overridden, otherwise
      // we can call RealGetText directly
      if TMethod(@Self.GetTextBuf).Code = Pointer(@TControl.GetTextBuf) // self = ????
    Mais pour en revenir à nos moutons, voici le code déviant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    unit Unit1; 
     
    {$Mode Delphi} // {$mode objfpc}{$H+}
     
    interface
     
    uses
      Classes, SysUtils, sqldb, db, BufDataset, memds, sqlite3conn, FileUtil, Forms,
      Controls, Graphics, Dialogs, StdCtrls, DBGrids,
      lyDepasseLabel in 'C:\Users\...\lyDepasseLabel.pas'; 
     
    type
      TForm1 = class(TForm)  
        //....
      end;
     
    var
      Form1: TForm1;
     
    implementation
     
    {$R *.lfm}       
     
    procedure TForm1.Button2Click(Sender: TObject);
    begin
      ModifieLabelPourDepassement(Label1, clRed, dmEndPoints);
      // avec le curseur, l'IDE montre l'unité qui l'héberge
      // le compilo dit "identifier not found : ModifieLabelPourDepassement"
    end;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    unit lyDepasseLabel;
     
    {$Mode Delphi}
     
    interface
     
    uses
      StdCtrls, Graphics, Dialogs; 
     
    type
     TDepasseMode=(dmBeginPoints, dmMiddlePoints, dmEndPoints);
     
    procedure ModifieLabelPourDepassement(var aLabel: TLabel; aLongColor: TColor; aDepasseMode: TDepasseMode);
     
    implementation             
     
    //...
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  4. #4
    Membre émérite
    Avatar de chris37
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juillet 2007
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 378
    Par défaut
    Bonjour,

    As tu essayé de déclarer simplement lyDepasseLabel dans ta ligne de USES et d'ajouter 'C:\Users\...\lyDepasseLabel.pas' dans les options de compilation de ton projet ?

    Cordialement,
    Chris

  5. #5
    Modérateur
    Avatar de tourlourou
    Homme Profil pro
    Biologiste ; Progr(amateur)
    Inscrit en
    Mars 2005
    Messages
    3 940
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Biologiste ; Progr(amateur)

    Informations forums :
    Inscription : Mars 2005
    Messages : 3 940
    Billets dans le blog
    6
    Par défaut
    Merci pour ton idée ; je viens de tester : c'est sans effet, sinon que l'IDE ne reconnaît plus la procédure...

    Lazarus supporte-t-il les noms de répertoires avec des espaces ?
    Delphi 5 Pro - Delphi 11.3 Alexandria Community Edition - CodeTyphon 6.90 sous Windows 10 ; CT 6.40 sous Ubuntu 18.04 (VM)
    . Ignorer la FAQ Delphi et les Cours et Tutoriels Delphi nuit gravement à notre code !

  6. #6
    Membre émérite
    Avatar de chris37
    Homme Profil pro
    Directeur des systèmes d'information
    Inscrit en
    Juillet 2007
    Messages
    378
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France

    Informations professionnelles :
    Activité : Directeur des systèmes d'information
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2007
    Messages : 378
    Par défaut
    Hum

    Essaye avec cette directive de compilation
    {$mode objfpc}{$M+}
    J'ai du modifier mes unités avec la dernière version de Lazarus

    Toutes mes unités perso sont dans des dossiers autres que ceux de mes projets et j'ajoute uniquement le chemin dans les options de compilation du projet.

    Si tu es sous Vista ou Seven ! il te faut les droits d'admin sur ces dossiers car il arrive que cela bloque notre guépard

    Cordialement,
    Chris

Discussions similaires

  1. bdd : erreur 3265 élément non trouvé dans cette collection
    Par morgan47 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 10/07/2006, 09h52
  2. Erreur de "Élément non trouvé dans cette collection"
    Par charleshbo dans le forum Access
    Réponses: 4
    Dernier message: 04/05/2006, 18h42
  3. Variable générale non trouvée dans une fonction
    Par mickael.be dans le forum Langage
    Réponses: 10
    Dernier message: 21/02/2006, 19h18
  4. [PHP-JS] Formulaire non trouvé dans une fonction
    Par philippe30 dans le forum Langage
    Réponses: 4
    Dernier message: 11/12/2005, 21h53

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