Einzelnen Beitrag anzeigen

Tumm

Registriert seit: 17. Jun 2006
Ort: Celle
171 Beiträge
 
Turbo Delphi für Win32
 
#41

Re: Checkboxen mit gleichem Boolean-Wert zählen

  Alt 24. Nov 2006, 20:13
Ich kann leider nicht den Datenschutz verringern, da es einfach verboten ist. Es ist eine Schulklassenliste mit 29 Namen.

Ich kann ja mal die ganze Prozedur anhängen, vielleicht reicht das ja auch schon (mit den Variablen natürlich)

Delphi-Quellcode:
procedure TForm24.Button13Click(Sender: TObject);
var
compo: TComponent;
cb: TCheckBox;
c2: Integer;

begin
with Memo1.Lines do begin
Clear;
Add(data.Caption);
Add('');
Add('Stand: ' + standd);
Add('Kommentare: ' + Edit1.Text);
end;
Memo1.Lines.Add('');
c3 := 0;
c3 := 1;
while c3 < 29 do begin
compo := (FindComponent('CheckBox' + IntToStr(c3)) as TCheckbox);
if Assigned(compo) then
begin
cb := compo as TCheckbox; // <--
if cb.CHecked = true then
a.Add(cb.Caption + ' hat abgegeben!')
else
na.Add(cb.Caption + ' hat nicht abgegeben!');
end;
inc (c3); // <-- nicht vergessen
end;
Memo1.Lines.AddStrings(a);
Memo1.Lines.Add('');
Memo1.Lines.AddStrings(na);
Memo1.Lines.Add('');
Memo1.Lines.Add(Label6.Caption);
Memo1.Lines.Add(Label7.Caption);
Memo1.Lines.Add('');
Memo1.Lines.Add('Gesamt: ' + IntToStr(ja + nein));
printer.Canvas.Font.Size := 12;
if f2 = false then begin
for c2 := 0 to memo1.lines.count -1 do Begin
  printer.canvas.textout( 0, c2 * printer.Canvas.TextHeight( Memo1.Lines[c2] ) , Memo1.Lines[c2]);
End;
printer.EndDoc;
end else
f2 := false;
end;
Delphi-Quellcode:
var
  Form24: TForm24;
  ini: TIniFile;
  stand: TTime;
  standd: String;
  nochmal, f1, f2: Boolean;
  c1, c2, c3: Integer;
  ja, nein: SMallInt;
  Strings: TStrings;
  i, i2: Integer;
  d: String;
  a, na: Tstrings;

implementation

uses Unit3, Unit1;


{$R *.dfm}
Tumm

PS: Die nächsten 2 Stunden bin ich leider nicht on
Code Gear = Kot Gier
  Mit Zitat antworten Zitat