und wieder mal ein langer Code:
Habe hier meine 2 Case Blöcke reingeschrieben. Bei 10: sind ja keine Übereinstimmunge mit den anderen. im case 0..9: hab ich eben reingeschrieben, was in anderen Blöcken gleich ist. Irgendwo ist da mal wieder ein kleiner Fehler drin, oder ich hab noch eine Line vergessen. Aber jetzte sollte es schon übersichtlicher sein (Einrückung).
Delphi-Quellcode:
for ichecked := 0 to CheckListBox1.Items.Count-1 do
if CheckListBox1.Checked[ichecked] then
case iZaehler of
0..9:
begin
Frames := TFrame4.Create(Self);
L.Add(Frames);
Frames.ClientHeight := 200;
Frames.Name:='';
iZaehler := iZaehler + 1;
iGecheckteframes := iGecheckteframes + 1;
Frames.Parent := Formular;
end;
end;
case iZaehler of
10:
begin
for I := l.Count -1 downto 0 do
begin
Frames:= (L[i] as TFrame4);
Frames.Free;
end;
ShowMessage('Formular in Zwischenablage kopieren + Formular leeren');
iZaehler := 0;
if iGecheckteFrames = 13 then
begin
ShowMessage('Zwischenablage drucken + aktuelle Form leeren')
end;
end;
0:
begin
Frames.Top := iY;
Frames.Parent := Formular;
if iGecheckteFrames = 13 then
begin
ShowMessage('Zwischenablage drucken und aktuelle Form drucken');
end;
end;
1..4:
begin
Frames.Top := iY + Frames.ClientHeight;
iY := Frames.Top;
Frames.Parent := Formular;
if iGecheckteFrames = 13 then
begin
ShowMessage('Zwischenablage drucken + aktuelle Form drucken');
end;
end;
5:
begin
Frames.ClientHeight := 200;
Frames.Name:='';
Frames.Left := 350;
end;
6..9:
begin
Frames.Left := 350;
Frames.Top := iRunter + Frames.ClientHeight;
iRunter:= Frames.Top;
if iGecheckteFrames = 13 then
begin
ShowMessage('Zwischenablage drucken + aktuelle Form drucken');
end;
end;
end;
Formular.Show;
end;