Einzelnen Beitrag anzeigen

hotkey

Registriert seit: 20. Aug 2011
Ort: Berlin
113 Beiträge
 
Delphi 6 Personal
 
#50

AW: Warteschlange realisieren

  Alt 14. Mai 2012, 16:28
Hallo,

da bin ich wieder.

Also wollte kurz was klarstellen : Die Id haben wir deshalb benutzt , damit wir die Menschen eindeutig identifizieren können , denn wir haben nicht ausgeschlossen , dass eine Person den gleichen Namen hat , wie eine andere.

Bevor ich noch verschiebe und so habe ich jetzt ein bisschen erweitert :

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Button1: TButton;
    procedure Button1Click(Sender: TObject);

  private
    { Private declarations }
  public
    { Public declarations }
  end;

  person = record
    Name:string;
    id:integer;
  end;


  Tschlange = class
  private
    next,max:integer;
    schlange : array [1..10] of person;
  public
    function einfuegen(x:person):boolean;
    constructor create;
  end;


var
  Form1: TForm1;
  myschlange:Tschlange;

implementation

{$R *.dfm}


constructor tschlange.create;
 begin
  next :=10;
  max := 10;
 end;

function tschlange.einfuegen(x: person):boolean;
begin
  //hinter dem Array kann man nichts mehr einfügen
  Result := Next >0;
  x.Name:= form1.edit1.text; // ERWITERUNG
  x.id := strtoint(form1.edit2.text); // ERWEITERUNG
  if Result then
    begin

      //Daten an aktuelle Array-Position schreiben
      schlange[Next].Name := x.Name;
      schlange[Next].Id := x.id;
      //Position abziehen
      dec(Next);

    schlange[next].Name:=x.name;
    schlange[next].id := x.id;

    end;
end;




procedure TForm1.Button1Click(Sender: TObject);
begin
myschlange := tschlange.create;

//myschlange.einfuegen()
end;

end.
Ich weiß , das im Button ist doppelt gemooppelt , ist aber irgendwie Gewöhnungssache geworden bei mir , hoffe , das macht keine Fehler.

Wenn ich jetzt für x.Name und x.Id 2 Edit-Felder habe , wie rufe ich die Funktion auf ?

So hier :

 einfuegen(x.id;x.name) , geht das so ?
Felix
  Mit Zitat antworten Zitat