AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Eigene Procedure aufrufen

Ein Thema von ferby · begonnen am 21. Sep 2004 · letzter Beitrag vom 11. Okt 2004
Antwort Antwort
Seite 1 von 3  1 23      
ferby

Registriert seit: 15. Aug 2004
Ort: Wien
841 Beiträge
 
Delphi 2010 Enterprise
 
#1

Eigene Procedure aufrufen

  Alt 21. Sep 2004, 16:55
Hallo,

ich habe eine eigene Procedure gemacht in dem ich einfach:

Delphi-Quellcode:
procedure menue;
begin
end;
geschrieben habe.

Jetzt will ich die procedure aufruffen indem ich in eine andere procedure geschrieben habe:

menue; leider kommt der fehler:

[Fehler] Unit1.pas(454): Undefinierter Bezeichner: 'menue'


was muss ich da definieren? ist sonst noch was falsch?
  Mit Zitat antworten Zitat
Benutzerbild von Shaman
Shaman

Registriert seit: 2. Nov 2003
Ort: Schweiz
407 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 16:57
Hoi

Schreib die Deklaration vor den Aufruf.

Gruss
Shaman
Daniel Pauli
Looking for answers from the great beyond
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#3

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 16:58
Hi Ferdinand,

entweder du deklarierst die Prozedur im interface-Teil als forward
procedure menue; forward; oder du deklarierst die Funktion vor der Funktion, in der du sie aufrufst.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
static_cast

Registriert seit: 19. Okt 2003
Ort: Peine
300 Beiträge
 
#4

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:00
hast du deine procedure als global sprich vor der implementation deklariert?
Daniel M.
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:02
Moin Ferby,

Prozedur und Aufruf stehen in der gleichen Unit:
Die Prozedur muss vor dem Aufruf implementiert, oder aber im Interface Abschnitt der Unit angegeben werden.

Beide stehen in Unterschiedlichen Units:
Die Prozedur muss im Interface Abschnitt der Unit angegeben werden, in der sie implementiert wurde.
Die Unit die die Prozedur enthält muss in einer der Uses Anweisungen stehen, in der die Prozedur aufgerufen werden soll.
In Deinem Beispiel sollte hier die Angabe in der Uses Anweisung im Implementation Abschnitt genügen.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#6

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:02
Hi Daniel,

Zitat von static_cast:
hast du deine procedure als global sprich vor der implementation deklariert?
das muss man nicht unbedingt. Wichtig ist, dass sie irgendwie vor dem Aufruf deklariert wurde. Ob mit forward oder ganz normal nach implementation ist egal. Wichtig ist, dass sie deklariert wurde.

Greetz
alcaeus

[add]
Ich hab nur die halbe Wahrheit gesagt. Falls die beiden Prozeduren in unterschiedlichen Units stehen, beachte Christians Tipps
[/add]
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
ferby

Registriert seit: 15. Aug 2004
Ort: Wien
841 Beiträge
 
Delphi 2010 Enterprise
 
#7

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:03
Hallo,

ich habe ein paar sachen ausprobiert aber ich habe es nicht hin bekommen.
kannst du mir ein programm beispiel geben wo eine eigene procedure aufgerufen wird?
  Mit Zitat antworten Zitat
Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#8

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:05
Hi Ferdinand,

Zitat von ferby:
kannst du mir ein programm beispiel geben wo eine eigene procedure aufgerufen wird?
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  MeineProzedur; //dies funktioniert nicht
end;

procedure MeineProzedur;
begin
  Showmessage('Hallo');
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  MeineProzedur; //dies funktioniert
end;

end.
Nur als Beispiel.

Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat
Benutzerbild von Nikolas
Nikolas

Registriert seit: 28. Jul 2003
1.528 Beiträge
 
Delphi 2005 Personal
 
#9

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:06
So zum Beispiel:
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
    procedure HalloWelt;
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.HalloWelt;
begin
showmessage('Hallo Welt');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
hallowelt;
end;

end.
Erwarte das Beste und bereite dich auf das Schlimmste vor.
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#10

Re: Eigene Procedure aufrufen

  Alt 21. Sep 2004, 17:14
öhm das mit dem forward muss mir mal erlären, dass kenn ich noch gar net, finde auch in der Hilfe nix dazu



kenne das nur so *hoffe das is richtig*

Delphi-Quellcode:
unit MainUnit;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, DB, ADODB, StdCtrls, ExtCtrls;

type
  TForm1 = class(TForm)

  procedure test; //Hierrein gehts... Was das dann ist ka ^^

  private
    { Private-Deklarationen }
    procedure test; //Hierrein gehts... ist dann ne private Procedure (kann man nur in der Unit benutzen)
 
  public
    { Public-Deklarationen }
    procedure test; //Hierrein gehts... ist dann ne public Procedure (kann man auch in anderen Units benutzen)
  end;

var
  Form1: TForm1;


implementation

{$R *.dfm}

procedure TForm1.test;
begin
            //da wär sie ^^
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  test; // Hier rufen wir sie auf :)
end;

end.

Alles richtig erklärt?
Vielleicht kann mir auch wer die Zeile "//Hierrein gehts... Was das dann ist ka ^^" erklären, dann hab ich meine wissenslücken geschlossen ^^
Ich tu sie eigendlich immer in public oder private rein...

Edit: To Late

MFG Keda
Christian
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 3  1 23      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz