Einzelnen Beitrag anzeigen

Fengi
(Gast)

n/a Beiträge
 
#1

table1 als extra klasse umformen

  Alt 6. Jan 2004, 10:03
hallo.momentan sieht mein programm so aus
Delphi-Quellcode:
type
  TForm1 = class(TForm)
  .
  .
  .
  Table1: TTable;
  .
  .
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

  .
  .
  procedure TForm1.FormCreate(Sender: TObject);
usw.
jetzt will ich aber table1 als extra klasse definieren und die dann auch im programm verwenden.meine table1-komponente zeigt auf die datenbank Termine.db und diese enthält die komponenten:Terminnummer,Datum,Uhrzeit,Beschreibun g,Intervall und wiederkehrender Termin.
ich will die klasse table1 in folgenden prozeduren verwenden:
Delphi-Quellcode:
//einmaligen Termin speichern
procedure TForm1.Button1Click(Sender: TObject);
var i:integer;
begin
  i:=0;
  table1.First;
  while table1.Eof = false do
        begin
        if table1.FieldByName('Datum').AsString = datetostr(Monthcalendar1.Date) then
        begin
          if table1.FieldByName('Uhrzeit').AsString = edit1.Text then
          i:=i+1;
        end;
        table1.Next;
        end;
        if i<>0 then messagedlg('Sie haben bereits einen Termin zu der Zeit !',mtinformation,[mbok],0)
        else
        begin
           table1.OpenDatabase;
           Table1.Insert;
           table1.FieldByName('Datum').AsString:=datetostr(monthcalendar1.Date);
           table1.FieldByName('Beschreibung').AsString:=edit2.Text;
           table1.FieldByName('Uhrzeit').AsString:=edit1.Text;
           table1.FieldByName('Termin erreicht').AsString:='falsch';
           table1.Append;
        end;
end;

//Termin löschen
procedure TForm1.Button3Click(Sender: TObject);
begin
  table1.Open;
  Datasource1.DataSet.Delete;
  messagedlg('Termin gelöscht',mtinformation,[mbok],0);
  timer1.Enabled:=true;
end;

//wiederkehrenden Termin speichern
procedure TForm1.Button2Click(Sender: TObject);
begin
  table1.OpenDatabase;
  table1.Insert;
  table1.FieldByName('Datum').AsString:=datetostr(monthcalendar1.Date);
  table1.FieldByName('Beschreibung').AsString:=edit2.Text;
  table1.FieldByName('Uhrzeit').AsString:=edit1.Text;
  table1.FieldByName('Intervall').AsString:=dbedit3.Text;
  table1.FieldByName('Wiederkehrender Termin').AsString:=datetostr(monthcalendar1.Date);
  table1.FieldByName('Termin erreicht').AsString:='falsch';
  table1.Append;
  end;
hat einer eine idee?
  Mit Zitat antworten Zitat