Einzelnen Beitrag anzeigen

Metallicwar

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

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

  Alt 2. Sep 2010, 21:04
super, hat geklappt. Danke.
Hier nochmal der Code:
Delphi-Quellcode:
procedure TForm1.Button1Click(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;
  iY := 0;
  iRunter := 0;
  iZaehler := 0;
  for ichecked := 0 to CheckListBox1.Items.Count-1 do
    if CheckListBox1.Checked[ichecked] then
    begin
      if iGecheckteFrames = 14 then
      begin
        ShowMessage('Zwischenablage drucken + aktuelle Form drucken');
      end
      else
      begin
        if iZaehler = 10 then
        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;
          iGecheckteFrames:= iGecheckteFrames + 1;
          if iGecheckteFrames = 14 then
          begin
            ShowMessage('Zwischenablage drucken + aktuelle Form leeren')
          end;
        end
        else
        begin
          if iZaehler = 0 then
          begin
            Frames := TFrame4.Create(Self);
            L.Add(Frames);
            Frames.ClientHeight := 200;
            Frames.Name:='';
            Frames.Top := iY;
            Frames.Parent := Formular;
            iZaehler := iZaehler + 1;
            iGecheckteframes := iGecheckteframes + 1;
            if iGecheckteFrames = 14 then
            begin
            ShowMessage('Zwischenablage drucken und aktuelle Form drucken');
            end;
          end
          else
          begin
            if iZaehler <= 4 then
            begin
              Frames := TFrame4.Create(Self);
              L.Add(Frames);
              Frames.ClientHeight := 200;
              Frames.Name:='';
              Frames.Top := iY + Frames.ClientHeight;
              iY := Frames.Top;
              Frames.Parent := Formular;
              iZaehler := iZaehler + 1;
              iGecheckteFrames := iGecheckteFrames + 1;
              if iGecheckteFrames = 14 then
              begin
                ShowMessage('Zwischenablage drucken + aktuelle Form drucken');
              end;
            end
            else
            begin
              if iZaehler = 5 then
              begin
                Frames := TFrame4.Create(Self);
                L.Add(Frames);
                Frames.ClientHeight := 200;
                Frames.Name:='';
                Frames.Left := 350;
                Frames.Parent := Formular;
                iZaehler := iZaehler + 1;
                iGecheckteframes := iGecheckteframes + 1;
              end
              else
              begin
                Frames := TFrame4.Create(Self);
                L.Add(Frames);
                Frames.ClientHeight := 200;
                Frames.Name:='';
                Frames.Left := 350;
                Frames.Top := iRunter + Frames.ClientHeight;
                iRunter:= Frames.Top;
                Frames.Parent := Formular;
                iZaehler := iZaehler + 1;
                iGecheckteFrames := iGecheckteFrames + 1;
              if iGecheckteFrames = 14 then
                begin
                  ShowMessage('Zwischenablage drucken + aktuelle Form drucken');
                end;
              end;
            end;
          end;
        end;
      end;
    end;
    Formular.Show;
end;
Werde jetzte das Programm erneut durchgehn und weitere Fehler, etc. suchen Davon werden mit Sicherheit noch welche vorhanden sein. Falls ich nicht weiter komme, werd ich mich hier melden
  Mit Zitat antworten Zitat