Einzelnen Beitrag anzeigen

Benutzerbild von Moombas
Moombas

Registriert seit: 22. Mär 2017
Ort: bei Flensburg
525 Beiträge
 
FreePascal / Lazarus
 
#23

AW: Dynamischer Verweis auf Komponente

  Alt 19. Sep 2018, 12:50
Ja genau. Aber es ist doch einfach zu verstehen. Die Namen bauen sich (logischerweise) so auf:

ButtonXABC
...
ButtonXXABC

Nun schaue ich (nach obigem Beispiel) ob an 8. Stelle eine Zahl ist. Wenn ja, dann ist an der 7. Stelle auch eine Zahl und somit sind wir im Bereich 10-99. Andernfalls sind wir im Bereich 0-9.
Oder Andres gesagt: Versucht er bei "ButtonXABC" sonst das "A" in eine Zahl zu wandeln, was nicht geht -> exception -> anderes Handling.
Delphi-Quellcode:
    try
      StrToInt(copy(Name, 8, 1));
//1-Stellig (0-9)
    except
//2-Stellig (10-99)
    end;
Alternativ hätte man auch generell 2-Stellig arbeiten können:
Button0XABC
...
ButtonXXABC
Dann bräuchte man nur prüfen ob an 7. Stelle eine "0" vorhanden ist und dementsprechend ableiten, also:
Delphi-Quellcode:
if Name[7] = '0then
//1-Stellig (0-9)
    else
//2-Stellig (10-99)

Geändert von Moombas (19. Sep 2018 um 14:26 Uhr)
  Mit Zitat antworten Zitat