Einzelnen Beitrag anzeigen

remo.lieb

Registriert seit: 30. Nov 2015
2 Beiträge
 
Delphi 7 Personal
 
#1

Delphi _ Button öfter benutzen

  Alt 1. Dez 2015, 00:05
Hallo,

zurzeit benutze ich Delphi 7 mit freier Lizenz. Ich interessiere mich sehr für Programmieren, doch stoße gerade an meine Grenzen. Ich habe heute versucht ein Programm zu schreiben, welches Daten wie Kosten, Name der Zahlung aufnimmt und diese in einer Tabelle ausgibt. Ich habe einen Button benutzt, den ich als "Hinzufügebutton" benutze (er soll thoeretisch immer in der nächsten Zeile den neuen Eintrag dranhängen). Ich kann zwar die erste Reihe in der Tabelle hinzufügen und diese durch Veränderungen in den Edit-Feldern verändern, aber komme NIE in die zweite Zeile meiner Tabelle um dort die zweite "Abbuchung" hinzuzufügen. Hier der Quelltext:

Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    Button4: TButton;
    Button5: TButton;
    Edit3: TEdit;
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Edit2: TEdit;
    StringGrid1: TStringGrid;
    Label5: TLabel;
    procedure Button4Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure Button6Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;
Tabrechnung = RECORD
  name : string;
  kosten : real;
  quit : string;
end;
var
  Form1: TForm1;
  abrechnung : Tabrechnung;
  i,n,c : integer;
implementation

{$R *.dfm}

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

procedure TForm1.FormCreate(Sender: TObject);
begin
StringGrid1.RowCount := 2;
StringGrid1.ColCount := 4;

StringGrid1.Cells[0,0] := 'Nummer';
StringGrid1.Cells[1,0] := 'Name';
StringGrid1.Cells[2,0] := 'Kosten';
StringGrid1.Cells[3,0] := 'Quittung';

end;

procedure TForm1.Button1Click(Sender: TObject);

begin
i := 1;
n := 1;
c := 0;



abrechnung.name := Edit2.Text;
abrechnung.kosten := strtofloat(Edit1.Text);
abrechnung.quit := Edit3.Text;

StringGrid1.Cells[0,n] := inttostr(n);
StringGrid1.Cells[i,n] := abrechnung.name;
i := i+1;
StringGrid1.Cells[i,n] := floattostr(abrechnung.kosten);
i := i+1;
StringGrid1.Cells[i,n] := abrechnung.quit;
n := n+1;
i := i-2;

Label5.Caption := inttostr(n);
StringGrid1.
end;




end.
Ich würde mich über hilfreiche Antworten sehr freuen. Vielen Dank!

Geändert von Daniel ( 1. Dez 2015 um 08:37 Uhr) Grund: Code in Delphi-Tags gesteckt.
  Mit Zitat antworten Zitat