Nun, in dem fett gedruckten steht nichts anderes als, daß das onChange Ereignis
nur dann ausgelöst wird, wenn eine User/Benutzer etwas in der ComboBox ändert.
Wenn Du aus Deinem Programm aus den Index änderst, wird das Ereignis nicht ausglöst.
Vielleicht solltest Du dahingehend Dein Programmdesign einmal überdenken.
Vielleicht so, daß Du die Aufgaben die in der OnChange Procedure definiert sind auslagerst
in eine separate Procedure:
Delphi-Quellcode:
procedure TForm1.TuWas(Index1,Index2:Integer);
Var I:Integer;
begin
case Index1 of
0: begin
ClearDigitalChannel(1);
Progressbar2.Min:=0;
Progressbar2.Max:=100000;
for I:=0 to 100000-1 do
begin
Progressbar2.Position:=I;
end;
Case Index2 of
0: begin
BG.Picture.Bitmap.LoadFromFile('WinCC Tunnelprojektierung_bearbeitet.bmp');
end;
1: begin
BG.Picture.Bitmap.LoadFromFile('WinCC Tunnelprojektierung_Weströhre.bmp');
end;
else
begin
BG.Picture.Bitmap.LoadFromFile('WinCC Tunnelprojektierung_Weströhre.bmp');
end;
end;
end;
1: begin
...
Delphi-Quellcode:
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
tuWas((sender as TComboBox).ItemIndex,ComboBox2.ItemIndex);
end;
Delphi-Quellcode:
procedure TForm1.Button6Click(Sender: TObject);
begin
Case ProgressBar3.Position of
0: Begin
Button4.Click;
end;
2: Begin
ComboBox1.ItemIndex:=1;
TuWas(ComboBox1.ItemIndex,ComboBox2.ItemIndex);
ComboBox2.ItemIndex:=1;
TuWas(ComboBox1.ItemIndex,ComboBox2.ItemIndex);
end;
Ist nicht das Gelbe vom Ei, aber ein Ansatz wie es anders gemacht werden könnte.
Grüße
Klaus