Einzelnen Beitrag anzeigen

Alecto

Registriert seit: 28. Jan 2006
7 Beiträge
 
#6

Re: Datenbank mit zufällig generierten Einträgen/Suchfunktio

  Alt 4. Feb 2006, 18:09
Hallo, ich bin es wieder.
Erstmal danke an mkinzler für den Tip mit der Schleife.

Nun habe ich versucht, das alles umzusetzen, aber irgendwie klappt es noch nicht. Ich poste mal den Code, ja? Dazu natürlich meine Ideen und was ich bis jetzt dazu überlegt habe.
Übrigens: Wenn ich den Suchen-Teil allein ausführen will, bekomme ich einen ReadError.

Delphi-Quellcode:
unit msuchen;

interface

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

type
  TForm1 = class(TForm)
    edkunde: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    edkundennummer: TEdit;
    edumsatz: TEdit;
    edtyp: TEdit;
    ListBox1: TListBox;
    bt_suchen: TButton;
    Button2: TButton;
    Button3: TButton;
    Edit5: TEdit;
    Label3: TLabel;
    Label4: TLabel;
    bt_test: TButton;
    procedure bt_suchenClick(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    
  private
    { Private-Deklarationen }
    kunde: string;
    ZArray : array['A'..'Z'] of char;
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}



procedure TForm1.bt_suchenClick(Sender: TObject);
var i:integer;
begin
for i := 0 to Listbox1.Count -1 do
begin
  if pos(listbox1.items[i], '<suchstr>') > 0 then ... //gefunden
end;

procedure TForm1.FormCreate(Sender: TObject);
var j:integer;
i:integer;
s:string;
begin
  for j := 1 to 1000 do
  s := ' ';
  for i := 1 to 8 do
  begin
    s[i] := Chr(Random(26) + 65);
  end;
  listbox1.add( s);
end;

end.
procedure TForm1.Button4Click(Sender: TObject);
zuordnen(delimiter:char;
quelle:string;
var e1,e2,e3,e4:tedit)

begin
e1.text:=copy(quelle,1,pos(delimiter,quelle)-1);
delete(quelle,1,ps(delimiter,quelle));
e2.text:=copy(quelle,1,pos(delimiter,quelle)-1);

---

{zuordnen('#',kundenbox.items[i],edname,edkundennummer,
edumsatz,edtyp);
end;    }
So sieht es bis jetzt aus, und einige Teile funktionieren sogar, aber der Rest...nun:

Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
var j:integer;
i:integer;
s:string;
begin
  for j := 1 to 1000 do
  s := ' ';
  for i := 1 to 8 do
  begin
    s[i] := Chr(Random(26) + 65);
  end;
  listbox1.add( s);
end;
Aus j, i und s habe ich Variablen gemacht.
Nun funktioniert das Einfügen in die Listbox (Listbox1) aber nicht, kann mir jemand erklären, wie ich das ändern könnte, sodass es funktioniert?
Und was mache ich mit listbox1.add( s);?

Delphi-Quellcode:
begin
procedure TForm1.bt_suchenClick(Sender: TObject);
var i:integer;
begin
for i := 0 to Listbox1.Count -1 do
begin
  if pos(listbox1.items[i], '<suchstr>') > 0 then ... //gefunden
end;
Das gehört zur Suchfunktion.

Könnte man das Ergebnis der Suche so in das Editfeld schreiben:
if pos(listbox1.items[i], '<suchstr>') > 0 then edit1.caption + 'ergebnis'?
'ergebnis' müsste irgendetwas mit einem Listbox-Index oder so sein, glaube ich.
Weiß das vielleicht jemand?

Wäre sehr nett, wenn mir jemand helfen könnte.
  Mit Zitat antworten Zitat