Autor Beitrag
Hendi48
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 271



BeitragVerfasst: Sa 25.08.07 18:46 
Hi,
ich habe eine procedure, die versucht auf subitems in einem listview zuzugreifen. Wenn diese SubItems allerdings noch nicht existieren, kommt eine Exception (Listenindex überschreitet das Maximum (3)). Diese hab ich mich try except abgefangen, nur leider stoppt jetz die ganze procedure. Kann ich dem prog irgendwie sagen das es weitermachen soll?
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Sa 25.08.07 19:13 
Warum kontrollierst du nicht erst, ob diese Items überhaupt existieren? Damit würdest du dir die Exception sparen und bräuchtest auch gegebenfalls keine Fehlermeldung auszugeben! ;)
Beispiel: if ItemNumber > (ListView.ItemsCount - 1then ... else ...

Einziges Manko hier wäre meines Erachtens die Performance, die jenachdem was du tust, auf Grund der If-Abfrage leicht sinkt.
grüße
Hendi48 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 271



BeitragVerfasst: Sa 25.08.07 19:24 
aber ich möchte ja wenn prüfen ob ein SUBITEM existiert. Das Haupt-item existiert auf jeden Fall
Marc.
ontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic starofftopic star
Beiträge: 1876
Erhaltene Danke: 129

Win 8.1, Xubuntu 15.10

BeitragVerfasst: Sa 25.08.07 19:46 
Wo liegt dein Problem?
Ein weiteres Beispiel:
ausblenden Delphi-Quelltext
1:
2:
3:
 if (listview1.Items.Count = 2then
  if (listview1.Items.Item[2].SubItems.Count = 3then 
    // tue irgendetwas mit Subitem 1-3 von Item2 ...

grüße
Hendi48 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 271



BeitragVerfasst: Sa 25.08.07 19:52 
Oh, ich wusste gar nich das es bei SubItems auch Count gibt!
Danke, es geht :D