Autor Beitrag
master_j
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 17

WIN 98, WIN XP
D5 Pers
BeitragVerfasst: Fr 06.05.05 09:50 
Hallo an alle!

Ich habe da ein kleines Problem mit Laufzeiterzeugung von Komponenten, vielleicht kann mir einer von euch ja helfen.

Ich möchte zur Laufzeit eine variable Anzahl von TCheckbox-Komponenten innerhalb eines Panels erzeugen. Das scheint mir auch zu gelingen, aber ich SEHE die Dinger nicht!!! Ich hab schon vieles ausprobiert, am besten hier mal ein Text:

ausblenden volle Höhe Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
var grid: array of array of tcheckbox;
....

procedure Button1Click(sender: Tobject)
var i,j,f,zeilen,spalten: integer;
begin
val(edit1.text,zeilen,f);
val(edit2.text,zeilen,f);

//Array erzeugen
setlength(grid,zeilen);
for i := 0 to length(grid)-1 do
 setlength(grid[i], spalten);

//Checkboxen erzeugen
for i:= 0 to length(grid) -1 do 
begin
 for j := 0 to length(grid[i])-1 do
  begin
    grid[i,j] := tcheckbox.create(panel2);
    grid[i,j].name := 'g'+inttostr(i)+inttostr(j);
    grid[i,j].left := 40 + i* 20;
    grid[i,j].top := 70 + j*30;
    //soweit alles ok. und jetzt???
    grid[i,j].bringtofront //bringt nichts, ebensowenig "repaint" oder "paintto" oder   
//was auch immer...
   
  end;
end;

end;


Besten Dank im Voraus.
chrisw
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 439
Erhaltene Danke: 3

W2K
D7
BeitragVerfasst: Fr 06.05.05 10:10 
Du musst noch parent setzen
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
//... global 
arr : Array[1..5]  of TCheckBox;
//...

procedure TForm1.Button1Click(Sender: TObject);
var i : Integer;
begin
  for i := 1 to 5 do
  begin
    arr[i] := TCheckBox.Create(self);;
    arr[i].parent := Form1;
  end;
end;


//EDIT
Also:
ausblenden Delphi-Quelltext
1:
grid[i,j].Parent := Panel2;					

_________________
Man sollte keine Dummheit zweimal begehen, die Auswahl ist schließlich groß genug.
master_j Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 17

WIN 98, WIN XP
D5 Pers
BeitragVerfasst: Fr 06.05.05 12:25 
ok. vielen dank, ich werde das später mal ausprobieren.
bis dann.