AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

CheckListBox Ergebnisse auflisten

Ein Thema von Das Orakel von · begonnen am 28. Nov 2018 · letzter Beitrag vom 29. Nov 2018
Antwort Antwort
Seite 2 von 2     12
Das Orakel von

Registriert seit: 28. Nov 2018
7 Beiträge
 
#11

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 15:53
Vorhin hast du es doch auch richtig gemacht... (erster Post Bild)
Die Stelle (Breakpoint) wo der Fehler auftritt. Da kann man auch sehen welche Werte die Variablen haben. (vorher)
http://docwiki.embarcadero.com/RADSt...(IDE-Tutorial)

PS: Stelle mal in deinem Profil deine Delphi Version ein. Da können wir besser helfen.


Ehm... ich weiß jetzt nicht genau worauf du hinaus willst
Einen Screenshot hab ich mal nochmal gemacht
Soll ich die Schritte machen auf der Seite "Debuggen der Anwendung"?
Miniaturansicht angehängter Grafiken
problem-2.jpg  
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.287 Beiträge
 
Delphi XE7 Professional
 
#12

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 15:58
.. kann es sein das nach der for Schleife der Counter i nicht mehr richtig ist.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Das Orakel von

Registriert seit: 28. Nov 2018
7 Beiträge
 
#13

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 16:03
.. kann es sein das nach der for Schleife der Counter i nicht mehr richtig ist.

Grüße
Klaus


Wo müsste ich den dann ändern?
Ich habe
i, n : Integer;

als Variablen eingegeben
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.287 Beiträge
 
Delphi XE7 Professional
 
#14

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 16:07
..Du könntest die Caption des Labels innerhalb der Schleife setzen

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
653 Beiträge
 
#15

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 16:21
.. kann es sein das nach der for Schleife der Counter i nicht mehr richtig ist.

Grüße
Klaus


Wo müsste ich den dann ändern?
Ich habe
i, n : Integer;

als Variablen eingegeben

Du schreibst:
Delphi-Quellcode:
procedure TEquipment.Button1_prüfenClick(Sender: TObject);

begin
  n := 0;
  for i := 0 to CheckListBox1.Items.Count - 1 do
  begin
    if CheckListBox1.Checked[i] then inc(n);
  end;
  Label2_Überprüfung.Caption := Label2_Überprüfung.Caption + sLineBreak + CheckListBox1.Items[i];

end;

end.
Du verwendest i in der Zuweisung der Caption außerhalb der Schleife.
Das ist Falsch. i wird am Ende jedes Schliefendurchlaufs um 1 erhöht. Auch beim letzten Durchlauf. Demnach sprichst du auch nach der Schleife ein Item der CheckListBox an, welches nicht existiert (Listenindex außerhalb des gültigen Bereichs).

Wenn du mal diesen Code ausprobierst (um dir das zu verdeutlichen):
Delphi-Quellcode:
procedure TForm1.btn1Click(Sender: TObject);
var
  i: Integer;
begin
  mmo1.Lines.Clear;
  for i:=0 to 5 do
  begin
    mmo1.Lines.Add('Innerhalb der Schleife: '+IntToStr(i));;
  end;
  mmo1.Lines.Add('Außerhalb der Schleife: '+IntToStr(i));;
end;
(Dieser Code setzt voraus, dass du einen Button mit dem Namen btn1 und ein Memo mit dem Namen mmo1 hast).

Da kommt folgendes Ergebins:
Zitat:
Innerhalb der Schleife: 0
Innerhalb der Schleife: 1
Innerhalb der Schleife: 2
Innerhalb der Schleife: 3
Innerhalb der Schleife: 4
Innerhalb der Schleife: 5
Außerhalb der Schleife: 6
Spricht für sich.


Richtig wäre also:
Delphi-Quellcode:
procedure TEquipment.Button1_prüfenClick(Sender: TObject);

begin
  n := 0;
  for i := 0 to CheckListBox1.Items.Count - 1 do
  begin
    if CheckListBox1.Checked[i] then
    begin
      Label2_Überprüfung.Caption := Label2_Überprüfung.Caption + sLineBreak + CheckListBox1.Items[i];
      inc(n);
    end;
  end;

end;

end.
wofür du n benötigst ist mir nicht klar.

Und: Schleifenvariablen sollte immer lokal deklariert sein. Also im var-Abschnitt der Procedure. Finde ich bei dir nicht.

Und: Warum nutzt du nicht die Delphi-Tags und schreibst deinen Code da hinein???? Ein Bild im Anhang macht es allen anderen schwer dir zu helfen.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.

Geändert von Hobbycoder (29. Nov 2018 um 13:12 Uhr)
  Mit Zitat antworten Zitat
28. Nov 2018, 18:06
Dieses Thema wurde am "28. Nov 2018, 19:06 Uhr" von "Luckie" aus dem Forum "Programmieren allgemein" in das Forum "GUI-Design mit VCL / FireMonkey / Common Controls" verschoben.
DieDolly

Registriert seit: 22. Jun 2018
897 Beiträge
 
#17

AW: CheckListBox Ergebnisse auflisten

  Alt 28. Nov 2018, 19:14
..Du könntest die Caption des Labels innerhalb der Schleife setzen

Grüße
Klaus
Habe ich schon in #4 vorgeschlagen. Wurde wohl ignoriert oder nicht gesehen.
  Mit Zitat antworten Zitat
Benutzerbild von haentschman
haentschman
Online

Registriert seit: 24. Okt 2006
Ort: Seifhennersdorf / Sachsen
4.146 Beiträge
 
Delphi 10.1 Berlin Professional
 
#18

AW: CheckListBox Ergebnisse auflisten

  Alt 29. Nov 2018, 05:58
Moin...
Was wällt dir an den 2 Screenshots auf?
https://www.delphipraxis.net/attachm...n-probem-1.jpg
https://www.delphipraxis.net/attachm...-problem-2.jpg
Du verwendest, neuerdings, I bei Label_Überprüfung. I ist außerhalb der Schleife nicht mehr gültig! (wurde schon gesagt)
  Mit Zitat antworten Zitat
Hobbycoder

Registriert seit: 22. Feb 2017
653 Beiträge
 
#19

AW: CheckListBox Ergebnisse auflisten

  Alt 29. Nov 2018, 09:39
Du verwendest, neuerdings, I bei Label_Überprüfung. I ist außerhalb der Schleife nicht mehr gültig! (wurde schon gesagt)
Gültig schon. Hat auch eine vorhersehbaren Wert. Nur eben entspricht dieser Max-Scheifendurchläufe+1 und passt somit auch nicht mehr zu den Items.

Hier mangelt es an den Grundlagen. Tutorials, die es im Netz zu Hauf gibt, sollten helfen. Bevor die Grundlagen nicht vorhanden sind, bringt das alles nichts. Sorry.
Gruß Hobbycoder
Alle sagten: "Das geht nicht.". Dann kam einer, der wusste das nicht, und hat's einfach gemacht.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
897 Beiträge
 
#20

AW: CheckListBox Ergebnisse auflisten

  Alt 29. Nov 2018, 12:06
Hier mangelt es an den Grundlagen. Tutorials, die es im Netz zu Hauf gibt, sollten helfen. Bevor die Grundlagen nicht vorhanden sind, bringt das alles nichts. Sorry.
Oft lernt man auch einfach durch Herumprobieren statt über aktives Lernen.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:11 Uhr.
Powered by vBulletin® Copyright ©2000 - 2019, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2019 by Daniel R. Wolf