Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi Proceduren erstellen (https://www.delphipraxis.net/162439-proceduren-erstellen.html)

Marcel2906 23. Aug 2011 08:41

Proceduren erstellen
 
Hey Leute,

ich habe ein Programm geschrieben, welches die Funktionen einer Bus Anzeigetafel hat.
Nun sollte ich das löschen, die Ausgabe an listbox und das sortieren in einer eigenen Procedure machen.
Doch so etwas hab ich noch nie gemacht, darum hab ich mich mal im iNet schlau gemacht. Für das sortieren hat es auch geklappt, doch die anderen beiden Proceduren gehen nicht. Anscheinend kann ich in diesen Proceduren meine ListBox nicht benutzen.
Hoffentlich könnt Ihr mir helfen.

Code:
unit Busanzeige1;

interface

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

type
  TForm1 = class(TForm)
    ListBox1: TListBox;
    TLabel1: TLabel;
    TLabel2: TLabel;
    TLabel3: TLabel;
    TLabel4: TLabel;
    TLabel5: TLabel;
    Hinzufügen: TButton;
    alleLinien: TButton;
    Linie: TEdit;
    Ziel: TEdit;
    Ankunft: TEdit;
    Abfahrt: TEdit;
    Verspätung: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    bearbeiten: TButton;
    löschen: TButton;
    zehnAnzeigen: TButton;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Beenden: TBitBtn;
    procedure HinzufügenClick(Sender: TObject);
    procedure BeendenClick(Sender: TObject);
    procedure alleLinienClick(Sender: TObject);
    procedure löschenClick(Sender: TObject);
    procedure zehnAnzeigenClick(Sender: TObject);
    procedure bearbeitenClick(Sender: TObject);
end;

type
  TBusEintrag = record
    Linie: string;
    Ziel: string;
    Ankunft: Integer;
    Abfahrt: string;
    Verspätung: Integer;
end;

var
  Form1: TForm1;
  Liste: array of TBusEintrag;
  c,e,f,l,n,x: integer;
  a,b,d,y:string;


implementation

{$R *.dfm}

procedure TDelete;
var
i:integer;
begin
 //x bekommt den Wert der makierten Stelle
 for i := 0 to listbox1.Count - 1 do
  if listbox1.Selected[i] then
   begin
    x:=i;
   end;

//Einträge in Array werden verschoben
while x<high(Liste) do
 begin
  Liste[x]:=Liste[x+1];
  x:=x+1;
 end;
 //Array wird um 1 verringert
 setLength(Liste,Length(Liste)-1);

 //Makierter Eintrag wird aus ListBox entfernt
 ListBox1.DeleteSelected;
end;

procedure TOutput;
   const
      MAX_TABS = 5;
      Tab = #9;
   var
      Tabulators: array[0..MAX_TABS] of Integer;

begin
//neuen Eintrag in Array eintragen
Liste[x].Linie:=a;
Liste[x].Ziel:=b;
Liste[x].Ankunft:=c;
Liste[x].Abfahrt:=d;
Liste[x].Verspätung:=e;
//Tabulatorweiten festlegen
Tabulators[0] := 72;
Tabulators[1] := 136;
Tabulators[2] := 202;
Tabulators[3] := 1;
Tabulators[4] := 1;
Listbox1.TabWidth := 1;

//Tabulatoren setzen
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

//ListBox leeren
ListBox1.clear;

//Liste ausgeben
f:=0;
 while ((f < length(Liste)) and (f<10)) do
  begin
   ListBox1.Items.Strings[f]:=' '+Liste[f].Linie
   + Tab +Liste[f].Ziel
   +Tab+Liste[f].Abfahrt+' Uhr'
   +Tab+IntToStr(Liste[f].Verspätung)+Tab+'Minuten';
   f:=f+1;
  end;
end;

procedure TSort;

begin
  if length(Liste)=0 then
 begin
  SetLength(Liste,1);
 end

 //suche Position für neuen Eintrag
 else
  begin
   while (c>Liste[x].Ankunft) and (x < length(Liste)) do
    begin
     x:=(x+1);
    end;

   //Array um 1 erweitern
   SetLength(Liste,length(Liste)+1);
   n:=(high(Liste));

  //Einträge verschieben
   while (n>x) do
    begin
     Liste[n]:=Liste[(n-1)];
     n:=(n-1);
    end;
  end;
end;

procedure TForm1.alleLinienClick(Sender: TObject);

const
  // Die Anzahl der maximal aufretenen Tabs eintragen
  MAX_TABS = 5;
  Tab = #9;

var
  Tabulators: array[0..MAX_TABS] of Integer;

begin
//Tabulatorweiten festlegen
Tabulators[0] := 72;
Tabulators[1] := 136;
Tabulators[2] := 202;
Tabulators[3] := 1;
Tabulators[4] := 1;
Listbox1.TabWidth := 1;

//Tabulatoren setzen
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

//ListBox leeren
ListBox1.clear;

//Liste in ListBox eintragen
f:=0;
 while (f < length(Liste)) do
  begin
   ListBox1.Items.Strings[f]:=' '+Liste[f].Linie
   + Tab +Liste[f].Ziel
   +Tab+Liste[f].Abfahrt+' Uhr'
   +Tab+IntToStr(Liste[f].Verspätung)+Tab+'Minuten';
   f:=f+1;
  end;
 end;

procedure TForm1.bearbeitenClick(Sender: TObject);
var
i:integer;

begin
 //x bekommt den Wert der makierten Stelle
 for i := 0 to listbox1.Count - 1 do
  if listbox1.Selected[i] then
   begin
    x:=i;
   end;

//Makierte Linie wird in Editfelder eingetragen
Linie.Text:= Liste[x].Linie;
Ziel.Text:= Liste[x].Ziel;
Ankunft.Text:= IntToStr(Liste[x].Ankunft);
Abfahrt.Text:= Liste[x].Abfahrt;
Verspätung.Text:= IntToStr(Liste[x].Verspätung);

TDelete;
end;

procedure TForm1.BeendenClick(Sender: TObject);
begin
close;
end;

procedure TForm1.löschenClick(Sender: TObject);
begin
  TDelete;
end;

procedure TForm1.zehnAnzeigenClick(Sender: TObject);
const
  // Die Anzahl der maximal aufretenen Tabs eintragen
  MAX_TABS = 5;
  Tab = #9;
var
  Tabulators: array[0..MAX_TABS] of Integer;

begin
//Tabulatorweiten festlegen
Tabulators[0] := 72;
Tabulators[1] := 136;
Tabulators[2] := 202;
Tabulators[3] := 1;
Tabulators[4] := 1;
Listbox1.TabWidth := 1;

//Tabulatoren setzen
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

//ListBox leeren
ListBox1.clear;

//Liste ausgeben
f:=0;
 while ((f < length(Liste)) and (f<10)) do
  begin
   ListBox1.Items.Strings[f]:=' '+Liste[f].Linie
   + Tab +Liste[f].Ziel
   +Tab+Liste[f].Abfahrt+' Uhr'
   +Tab+IntToStr(Liste[f].Verspätung)+Tab+'Minuten';
   f:=f+1;
  end;
end;

procedure TForm1.HinzufügenClick(Sender: TObject);
const
  // Die Anzahl der maximal aufretenen Tabs eintragen
  MAX_TABS = 5;
  Tab = #9;
var
  Tabulators: array[0..MAX_TABS] of Integer;

begin
try
//Eingetragene Werte Variablen zuordnen
x:=0;
a:= Linie.Text;
b:= Ziel.Text;
c:= StrToInt(Ankunft.Text);
d:= Abfahrt.Text;
e:= StrToInt(Verspätung.Text);
TSort;
TOutput;

Linie.Clear;
Ziel.Clear;
Ankunft.Clear;
Abfahrt.Clear;
Verspätung.Clear;

except
showmessage('Bitte alle Felder ausfüllen und Ankunft+Verspätung in Minuten angeben');
end;
end;
end.

DeddyH 23. Aug 2011 08:48

AW: Proceduren erstellen
 
Du hast 2 Möglichkeiten:
- Du verwendest weiterhin "reguläre" Prozeduren und musst dann über die globale Formular-Variable auf die Komponenten zugreifen (Form1.ListBox1)
- Du machst Methoden daraus. Methoden gehören zu einem Objekt, so dass Du sie ein wenig anders deklarieren musst.
Delphi-Quellcode:
type
  TForm1 = class(TForm)
  ...
    procedure DoDelete;
  ...
  end;

implementation

procedure TForm1.DoDelete; //hier muss das TForm1 davor
begin
  ListBox1.DeleteSelected;
end;

Bummi 23. Aug 2011 08:51

AW: Proceduren erstellen
 
noch einfacher
Delphi-Quellcode:
procedure DoDelete(Ziel:TListbox); //hier muss nichts davor
begin
  Ziel.DeleteSelected;
end;

Marcel2906 23. Aug 2011 08:57

AW: Proceduren erstellen
 
Zitat:

Zitat von Bummi (Beitrag 1118807)
noch einfacher
Delphi-Quellcode:
procedure DoDelete(Ziel:TListbox); //hier muss nichts davor
begin
  Ziel.DeleteSelected;
end;

Ich habe es jetzt so versucht.
Aber was muss ich denn dann aufrufen um diese Procedure in einer anderen zu benutzen?
Ich bekomme immer den Fehler
Zitat:

Nicht genügend wirkliche Parameter

DeddyH 23. Aug 2011 08:57

AW: Proceduren erstellen
 
Und welchen Sinn soll das an dieser Stelle machen? Da versucht man, einen kleinen Schubs in Richtung OOP zu geben... :roll:

ensaron 23. Aug 2011 09:01

AW: Proceduren erstellen
 
Zitat:

Zitat von Marcel2906 (Beitrag 1118809)
Aber was muss ich denn dann aufrufen um diese Procedure in einer anderen zu benutzen?

Du musst die Prozedur mit der Listbox als Parameter aufrufen, also
Delphi-Quellcode:
DoDelete(ListBox1);


Aber mach es lieber so, wie es DeddyH vorgeschlagen hat ;)

Marcel2906 23. Aug 2011 09:05

AW: Proceduren erstellen
 
Nun hab ich es so wie Daddy versucht. Aber nun bekomme ich die Fehlermeldung:

"Diese Form des Methodenaufrufs ist nur für Klassenmethoden erlaubt"

DeddyH 23. Aug 2011 09:07

AW: Proceduren erstellen
 
Wie rufst Du die Methode denn auf?

Luckie 23. Aug 2011 09:08

AW: Proceduren erstellen
 
Nimm die Version von DeddyH, das ist die einzig sinnvolle.

Und eventuell wäre es sinnvoll, sich ein Grundlagentutorial mal anzugucken.

Marcel2906 23. Aug 2011 09:09

AW: Proceduren erstellen
 
Zitat:

Zitat von DeddyH (Beitrag 1118816)
Wie rufst Du die Methode denn auf?

TForm1.DoDelete;

Marcel2906 23. Aug 2011 09:10

AW: Proceduren erstellen
 
Zitat:

Zitat von Luckie (Beitrag 1118817)
Nimm die Version von DeddyH, das ist die einzig sinnvolle.

Und eventuell wäre es sinnvoll, sich ein Grundlagentutorial mal anzugucken.

Hab ich mir angeguckt, aber irgendwie klappt das noch nicht so :(

DeddyH 23. Aug 2011 09:11

AW: Proceduren erstellen
 
Entweder
Delphi-Quellcode:
Form1.DoDelete;
oder wenn Du es aus einer Methode von Form1 aufrufst einfach
Delphi-Quellcode:
DoDelete;

Marcel2906 23. Aug 2011 09:14

AW: Proceduren erstellen
 
Danke, bin sogar 2 sekunden vorher selber drauf gekommen :oops:

himitsu 23. Aug 2011 09:33

AW: Proceduren erstellen
 
Und nun könnte man noch etwas gegen die vielen Globalen machen. :stupid:

Marcel2906 23. Aug 2011 09:43

AW: Proceduren erstellen
 
Kann ich jetzt meine Output Procedure auch mit einer Variable benutzen?
Ungefähr so (klappt leider nicht):

Code:
procedure TForm1.Output(g:integer);
   const
      MAX_TABS = 5;
      Tab = #9;
   var
      Tabulators: array[0..MAX_TABS] of Integer;

begin

//Tabulatorweiten festlegen
Tabulators[0] := 72;
Tabulators[1] := 136;
Tabulators[2] := 202;
Tabulators[3] := 1;
Tabulators[4] := 1;
ListBox1.TabWidth := 1;

//Tabulatoren setzen
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

//ListBox leeren
ListBox1.clear;

//Liste ausgeben
f:=0;
 while ((f < length(Liste)) and (f<g)) do
  begin
   ListBox1.Items.Strings[f]:=' '+Liste[f].Linie
   + Tab +Liste[f].Ziel
   +Tab+Liste[f].Abfahrt+' Uhr'
   +Tab+IntToStr(Liste[f].Verspätung)+Tab+'Minuten';
   f:=f+1;
  end;
end;

DeddyH 23. Aug 2011 09:46

AW: Proceduren erstellen
 
Du meinst mit Parameter bzw. Argument? Natürlich, was klappt denn nicht? BTW: Dein Array ist 1 Element zu groß ;)

Marcel2906 23. Aug 2011 09:51

AW: Proceduren erstellen
 
Ich bekomme die Fehlermeldung:

Deklaration von 'Output' unterscheidet sich von vorheriger Deklaration

Code:
type
  TForm1 = class(TForm)
    ...
    procedure Output;
end;

...

procedure TForm1.Output(g:integer);
   const
      MAX_TABS = 5;
      Tab = #9;
   var
      Tabulators: array[0..MAX_TABS] of Integer;

begin

//Tabulatorweiten festlegen
Tabulators[0] := 72;
Tabulators[1] := 136;
Tabulators[2] := 202;
Tabulators[3] := 1;
Tabulators[4] := 1;
ListBox1.TabWidth := 1;

//Tabulatoren setzen
SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

//ListBox leeren
ListBox1.clear;

//Liste ausgeben
f:=0;
 while ((f < length(Liste)) and (f<g)) do
  begin
   ListBox1.Items.Strings[f]:=' '+Liste[f].Linie
   + Tab +Liste[f].Ziel
   +Tab+Liste[f].Abfahrt+' Uhr'
   +Tab+IntToStr(Liste[f].Verspätung)+Tab+'Minuten';
   f:=f+1;
  end;
end;

Luckie 23. Aug 2011 09:53

AW: Proceduren erstellen
 
Du hast es hier doch schon fast untereinander kopiert:
Delphi-Quellcode:
    procedure Output;
procedure TForm1.Output(g:integer);
Fällt dir was auf?

DeddyH 23. Aug 2011 09:54

AW: Proceduren erstellen
 
Du musst es auch gleich deklarieren.
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    ...
    procedure Output(g: integer);
end;

Marcel2906 23. Aug 2011 09:56

AW: Proceduren erstellen
 
Komisch, vorher hatte ich das so, aber hatte trotzdem eine Fehlermeldung. Nun klappt es...

Marcel2906 23. Aug 2011 13:11

AW: Proceduren erstellen
 
Leider war diese Lösung falsch, ich soll es mit private machen.
Doch nun bekomme ich sehr viele Fehler, erkennt einer warum, ohne dass ich die Fehler alle benenne?

Code:
unit Busanzeige1;

interface

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

type

  TForm1 = class(TForm)
    ListBox1: TListBox;
    TLabel1: TLabel;
    TLabel2: TLabel;
    TLabel3: TLabel;
    TLabel4: TLabel;
    TLabel5: TLabel;
    Hinzufügen: TButton;
    alleLinien: TButton;
    Linie: TEdit;
    Ziel: TEdit;
    Ankunft: TEdit;
    Abfahrt: TEdit;
    Verspätung: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    bearbeiten: TButton;
    löschen: TButton;
    zehnAnzeigen: TButton;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Beenden: TBitBtn;
    procedure HinzufügenClick(Sender: TObject);
    procedure BeendenClick(Sender: TObject);
    procedure alleLinienClick(Sender: TObject);
    procedure löschenClick(Sender: TObject);
    procedure zehnAnzeigenClick(Sender: TObject);
    procedure bearbeitenClick(Sender: TObject);

    private
    type
    TBusEintrag = record
    Form1: TForm1;
    Liste: array of TBusEintrag;
    x: integer;
    AnkunftPlusVerspätung: TTime;

    procedure Delete;
    procedure Output(AnzahlEinträge:integer);
    procedure Sort;
    end;
  end;

implementation

{$R *.dfm}

procedure TForm1.Delete;
   var
      i: integer;
      MakierteStelle: integer;
   begin
   //x bekommt den Wert der makierten Stelle
      for i := 0 to ListBox1.Count - 1 do
         if ListBox1.Selected[i] then begin
            MakierteStelle:=i;
         end;

      //Einträge in Array werden verschoben
      while MakierteStelle<high(Liste) do begin
         Liste[MakierteStelle]:=Liste[MakierteStelle+1];
         x:=x+1;
      end;

      //Array wird um 1 verringert
      setLength(Liste,Length(Liste)-1);

      //Makierter Eintrag wird aus ListBox entfernt
      ListBox1.DeleteSelected;
   end;

procedure TForm1.Output(AnzahlEinträge:integer);
   const
      MAX_TABS = 4;
      Tab = #9;
   var
      Tabulators: array[0..MAX_TABS] of Integer;
      StelleEintrag:integer;
   begin
      //Tabulatorweiten festlegen
      Tabulators[0] := 72;
      Tabulators[1] := 136;
      Tabulators[2] := 202;
      Tabulators[3] := 1;
      Tabulators[4] := 1;
      ListBox1.TabWidth := 1;

      //Tabulatoren setzen
      SendMessage(ListBox1.Handle, LB_SETTABSTOPS, MAX_TABS, Longint(@Tabulators));

      //ListBox leeren
      ListBox1.clear;

      //Liste ausgeben
      StelleEintrag:=0;
      while ((StelleEintrag < length(Liste)) and (StelleEintrag<AnzahlEinträge)) do begin
         ListBox1.Items.Strings[StelleEintrag]:=' '+Liste[StelleEintrag].Linie+ Tab +Liste[StelleEintrag].Ziel+Tab+TimeToStr(Liste[StelleEintrag].Abfahrt+Liste[StelleEintrag].Verspätung)+' Uhr'+Tab+TimeToStr(Liste[StelleEintrag].Verspätung)+Tab+'h';
         StelleEintrag:=StelleEintrag+1;
      end;
   end;

procedure TForm1.Sort;
   var
      Eintrag:integer;
   begin
      if length(Liste)=0 then begin
         SetLength(Liste,1);
      end

      //suche Position für neuen Eintrag
      else begin
         while (AnkunftPlusVerspätung>(Liste[x].Ankunft+Liste[x].Verspätung)) and (x < length(Liste)) do begin
            x:=(x+1);
         end;

      //Array um 1 erweitern
      SetLength(Liste,length(Liste)+1);
      Eintrag:=(high(Liste));

      //Einträge verschieben
      while (Eintrag>x) do begin
         Liste[Eintrag]:=Liste[(Eintrag-1)];
         Eintrag:=(Eintrag-1);
      end;
      end;
   end;

procedure TForm1.alleLinienClick(Sender: TObject);
   begin
      Output(length(Liste));
   end;

procedure TForm1.bearbeitenClick(Sender: TObject);
   var
      i:integer;
      MakierteStelle: integer;
   begin
      //x bekommt den Wert der makierten Stelle
      for i := 0 to listbox1.Count - 1 do
         if listbox1.Selected[i] then begin
         MakierteStelle:=i;
         end;

      //Makierte Linie wird in Editfelder eingetragen
      Linie.Text:= Liste[MakierteStelle].Linie;
      Ziel.Text:= Liste[MakierteStelle].Ziel;
      Ankunft.Text:= TimeToStr(Liste[MakierteStelle].Ankunft);
      Abfahrt.Text:= TimeToStr(Liste[MakierteStelle].Abfahrt);
      Verspätung.Text:= TimeToStr(Liste[MakierteStelle].Verspätung);
      Delete;
   end;

procedure TForm1.BeendenClick(Sender: TObject);
   begin
      close;
   end;

procedure TForm1.löschenClick(Sender: TObject);
   begin
      Delete;
      Output(10);
   end;

procedure TForm1.zehnAnzeigenClick(Sender: TObject);
   begin
      Output(10);
   end;

procedure TForm1.HinzufügenClick(Sender: TObject);
   begin
      try
         //Eingetragene Werte Variablen zuordnen
         x:=0;
         AnkunftPlusVerspätung:= (StrToTime(Ankunft.Text)+StrToTime(Verspätung.Text));
         Sort;

         //neuen Eintrag in Array eintragen
         Liste[x].Linie:=Linie.Text;;
         Liste[x].Ziel:=Ziel.Text;
         Liste[x].Ankunft:=StrToTime(Ankunft.Text);
         Liste[x].Abfahrt:=StrToTime(Abfahrt.Text);
         Liste[x].Verspätung:=StrToTime(Verspätung.Text);
         Output(10);

         //Edit Felder leeren
         Linie.Clear;
         Ziel.Clear;
         Ankunft.Clear;
         Abfahrt.Clear;
         Verspätung.Clear;

         except
            showmessage('Bitte alle Felder ausfüllen oder korrekte Uhrzeit eingeben');
         end;
   end;
end.

DeddyH 23. Aug 2011 13:14

AW: Proceduren erstellen
 
Die Typdeklarationen haben im private-Abschnitt nichts zu suchen.
Delphi-Quellcode:
type
  TNeuerTyp = (ntDies, ntDas);

  TForm1 = class(TForm)
  ...
  private
    procedure DoSomeWork;
    procedure DoOtherWork;
  end;

Marcel2906 23. Aug 2011 13:20

AW: Proceduren erstellen
 
Nun habe ich es so, und trotzdem noch Fehler:

Code:
unit Busanzeige1;

interface

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

type
    TBusEintrag = record
    Form1: TForm1;
    Liste: array of TBusEintrag;
    x: integer;
    AnkunftPlusVerspätung: TTime;

  TForm1 = class(TForm)
    ListBox1: TListBox;
    TLabel1: TLabel;
    TLabel2: TLabel;
    TLabel3: TLabel;
    TLabel4: TLabel;
    TLabel5: TLabel;
    Hinzufügen: TButton;
    alleLinien: TButton;
    Linie: TEdit;
    Ziel: TEdit;
    Ankunft: TEdit;
    Abfahrt: TEdit;
    Verspätung: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    bearbeiten: TButton;
    löschen: TButton;
    zehnAnzeigen: TButton;
    Label4: TLabel;
    Label5: TLabel;
    Label6: TLabel;
    Label7: TLabel;
    Beenden: TBitBtn;
    procedure HinzufügenClick(Sender: TObject);
    procedure BeendenClick(Sender: TObject);
    procedure alleLinienClick(Sender: TObject);
    procedure löschenClick(Sender: TObject);
    procedure zehnAnzeigenClick(Sender: TObject);
    procedure bearbeitenClick(Sender: TObject);

    private
    procedure Delete;
    procedure Output(AnzahlEinträge:integer);
    procedure Sort;
    end;

implementation

{$R *.dfm}

DeddyH 23. Aug 2011 13:21

AW: Proceduren erstellen
 
Was soll denn genau zum Record gehören?

Marcel2906 23. Aug 2011 13:31

AW: Proceduren erstellen
 
Ahhh, danke..da ist mein Fehler...irgendwie sind meine Sachen vom Record verloren gegangen :!:
Jetzt schaff ich es alleine, danke schön :-D


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:27 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