Delphi-Quellcode:
type
TForm6 = class(TForm)
Label1: TLabel;
Button1: TButton;
ListView1: TListView;
procedure Label1Click(Sender: TObject);
private
{ Private-Deklarationen }
public
mycb:Array of TCheckbox;
procedure mycbClick(Sender: TObject);
{ Public-Deklarationen }
end;
var
Form6: TForm6;
implementation
{$R *.dfm}
Procedure freeall;
Var L1,cnt1:integer;
begin
L1:=Length(Form6.mycb);
for cnt1 := 0 to L1 - 1 do
freeandnil(Form6.mycb[cnt1]);
end;
procedure TForm6.mycbClick(Sender: TObject);
begin
Shomessage('ich wurde angeklickt');
mycb[0].Caption:='ich bin checkbox 0';
end;
procedure TForm6.Label1Click(Sender: TObject);
var
L1: integer;
begin
L1:=Length(mycb);
Setlength(mycb,L1+1);
mycb[L1]:= TCheckbox.Create(Form6);
try
with mycb[L1] do
begin
Parent := ListView1;
Top := 27;
Left := 16;
Height := 17;
Width := 97;
Caption:= 'Klicken zum Eintragen';
Name:= 'mybox';
OnClick:=mycbClick; //<---
end;
except freeall
end;
end;
end.
end.
der Fehler bedeutet übrigens das eine procedure oder function die im Type oder Class angegeben wurde
weiter unten im Quelltext nicht als procedure oder function (mit begin end
exisitert.
Die Listview wäre für Deine Zwecke auch geeignet,besitz aber keinen Editmode, (denkbar ist auch ein Stringgrid,das wiederum ohne
es selbst zu zeichnen, keine Checkbox zur Verfügung stellt),es sei denn, der selbstgebastelte Editmode
würde auf ein externes TEdit-Objekt verweisen,welches wiederum nach der Eingabe des Textes, das item.caption,bzw.subitem.text
der Listview ändert.