Einzelnen Beitrag anzeigen

Benutzerbild von cBoB
cBoB

Registriert seit: 5. Apr 2004
Ort: Berlin
61 Beiträge
 
Delphi 5 Professional
 
#1

Wo liegt hier das Problem?

  Alt 15. Apr 2004, 15:45
Folgender Code aus einem Programm macht im Großen und Ganzen das was er soll.
Aber eben nur fast.

Delphi-Quellcode:
procedure cr_tabs;
const
  TabTitles: array[0..4] of ShortString = ('Gerät1','Gerät2','Gerät3','Gerät4','Gerät5' );
var
  i: integer;
  cb_devs:TCombobox;
begin
  for i := 0 to (devcount-1) do
    with TTabSheet.Create(Form1.PageControl1) do
    begin
      PageControl := Form1.PageControl1;
      Name := 'ts' + InttoStr(i);
      Caption := TabTitles[i];

      cb_devs:= TComboBox.Create(PageControl);
      cb_devs.Parent:=Form1.PageControl1.Pages[i];
      cb_devs.top:=12;cb_devs.left:=8;
   end;
end;

procedure dest_tabs;
const
  TabTitles: array[0..4] of ShortString = ('Gerät1','Gerät2','Gerät3','Gerät4','Gerät5' );
var
  i: integer;
begin
  for i := (devcount-1) downto 0 do
    with Form1.PageControl1 do
    begin
      Pages[i].Free;
   end;
end;


procedure TForm1.N11Click(Sender: TObject);
begin
     dest_tabs;
     devcount:=1;
     N11.Checked:=True;
     cr_tabs;
     Form1.Refresh;
end;

procedure TForm1.N21Click(Sender: TObject);
...
Nun das Problem: die Prozeduren N11Click bis N51Click werden über ein Menü gesteuert, dabei ist devcount ein globale Variable und erthält die Werte 1 bis 5.
Dabei werden dynamisch Tabshests erzeugt und zwar soviele wie devcount angibt. Soweit sogut und funktiniert auch. zum Problem kommt es aber, wenn ich in den erzeugten Tabsheets wiederum eine Combobox erzeuge. Diese wird bei mehreren Sheets auch erzeugt, aber auf dem ersten wird diese nach dem ersten Durchlauf nicht mehr angezeigt. Erst wenn ich auf ein anderes Sheet wechsele und dann wieder auf das erste gehe, dann wird die Combobox richtig angezeigt was bei nur einem Sheet natürlich zu nem Problem wird.
Wer kann helfen, vorausgesetzt er sieht überhaupt durch den ziemlich wüsten Code durch??
-c-
  Mit Zitat antworten Zitat