Einzelnen Beitrag anzeigen

Metallicwar

Registriert seit: 5. Feb 2010
Ort: Bad Kissingen
293 Beiträge
 
Delphi XE Architect
 
#29

AW: Problem bei case // Problem bei Komponenten löschen

  Alt 3. Sep 2010, 14:27
Delphi-Quellcode:
procedure TForm1.bitbtnDruckenClick(Sender: TObject);
var
iChecked, iZaehler, iGecheckteFrames, iY, iRunter, iErstellteFrames, i: Integer;
begin
  Formular:=TForm.Create(Self);
  Formular.ClientHeight := 1500;
  Formular.ClientWidth := 670;
  l:=TComponentList.Create;
  L.OwnsObjects:= False;
  iGecheckteFrames := 0;
  iErstellteFrames := 0;
  iY := 0;
  iRunter := 0;
  iZaehler := 0;
  for ichecked := 0 to CheckListBox1.Items.Count-1 do
    if CheckListBox1.Checked[ichecked] then
    begin
      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;
              iZaehler := 0;
            end;
            begin
            if iGecheckteFrames = 13 then
              ShowMessage('Formular in Zwischenablage kopieren + Formular leeren');
            end;
          end;
          0:
          begin
            Frames.Top := iY;
            if iGecheckteFrames = 13 then
            ShowMessage('Zwischenablage drucken + aktuelle Form leeren');
          end;
          2..5:
          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;
          6:
          begin
            Frames.ClientHeight := 200;
            Frames.Name:='';
            Frames.Left := 350;
          end;
          7..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;
end;
So hoffe mal jetzte siehts alles bisschen übersichtlicher aus.
  Mit Zitat antworten Zitat