Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Methode meiner 2. unit ist in der 1. unit nicht bekannt (https://www.delphipraxis.net/18745-methode-meiner-2-unit-ist-der-1-unit-nicht-bekannt.html)

mirko2000 24. Mär 2004 07:37


Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Methodenaufruf einer Methode von 2. Unit in 1. Unit nicht möglich!

Fehlermeldung: Dieser Form des Methodenaufruf ist nur für Klassenmethoden erlaubt!

Anfang von 2. Unit
Delphi-Quellcode:
unit untanmelden;

interface
uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs,
  ComCtrls, TabNotBk, Menus, StdCtrls, Grids, DBGrids, ExtCtrls, Buttons, ToolWin,
  ActnMan, ActnCtrls;

type
  Anmeldung = class(TForm)
  private
  public
    procedure Anmelden;
  end;

implementation

uses Adoint, StrUtils, untVorlage_Screen;

procedure Anmeldung.Anmelden;
var
Aufruf erfolgt folgendermaßen:
Delphi-Quellcode:
procedure TfrmDBDoku.cmdAnmeldenPrClick(Sender: TObject);
begin
  //Anmeldung.MethodName(untanmelden.Anmeldung.anmelden);
  untanmelden.Anmeldung.anmelden;
end;

Bernhard Geyer 24. Mär 2004 07:48

Re: Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Die Fehlermeldung stimmt schon. Du brauchst ein instanziertes Objekt um eine "normale" Methode aufrufen zu können.
Delphi-Quellcode:
procedure TfrmDBDoku.cmdAnmeldenPrClick(Sender: TObject);
var
  dlg: Anmeldung;
begin
  dlg: Anmeldung.Create;
  try
    dlg.anmelden;
  finally
    dlg.Free
  end;
end;
[edit=r_kerber]Code- durch Delphi-Tags ersetzt. Mfg, r_kerber[/edit]

mirko2000 24. Mär 2004 07:55

Re: Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Habe es ausprobiert, aber es ist ein Fehler aufgetreten

code:
Delphi-Quellcode:
var
  dlg: Anmeldung;
begin
  dlg:= Anmeldung.Create;
  try
    dlg.anmelden;
  finally
    dlg.Free
  end;
end;
Fehler: "nicht genügend wirkliche Paramerter" in Zeile ( dlg:= Anmeldung.Create;)

sepp001 24. Mär 2004 08:03

Re: Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Hallo,

im Constructor eines Formulars muss der Eigentümer angegeben werden, dem dieses Formular gehört. Wenn das Formular Deiner aufrufenden Klasse gehören soll, musst du den Constructor folgendermassen aufrufen:

Delphi-Quellcode:
dlg := Anmeldung.Create(Self);
Ciao,
sepp001

mirko2000 24. Mär 2004 08:15

Re: Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Hallo,
es ist eine weitere Fehlermeldung aufgetreten: "Ressource Anmeldung nicht gefunden".

mirko2000 24. Mär 2004 08:22

Re: Methode meiner 2. unit ist in der 1. unit nicht bekannt
 
Hat doch funktioniert, danke!

:cheers:


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:43 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz