![]() |
Delphi-Version: 2010
Wort überspringen
Guten Tag,
ich habe vor ein kleines Tool zu programmieren was auf Befehle reagiert. bei so einem Befehl : !start test kann mann ja das !start überspringen per Pos. Aber was ist wenn der Benutzer so ein Befehl eingibt : !start test1 test2 Das mann test1 und test2 noch auslesen kann, das wäre sehr gut. Ist sowas möglich ? Mfg |
AW: Wort überspringen
ja, geht.
Delphi-Quellcode:
Grüße
sl := TStringList.Create;
try sl.delimiter := ' '; sl.delimitedText := '!start test1 test2'; // sl[0] = !start // sl[1] = test1 // sl[2] = test2 finally sl.free; end; Klaus |
AW: Wort überspringen
Ich verstehe diesen Code nicht ganz, Entschuldigen Sie ich bin noch ein Anfänger auf diesem Gebiet :-)
!start test1 test2 war nur ein Beispiel der Benutzer wird immer andere Werte dort eingeben. |
AW: Wort überspringen
war ja auch nur ein Beispiel.
Du hast ja auch nicht geschrieben wo der Text drinnen steht. Zitat:
sollte Dir eine Erklärung bringen um was es sich da handelt. Grüße Klaus |
AW: Wort überspringen
Dankeschön bishierher, funktioniert soweit alles :-)
Und was kann ich machen wenn das kein Fehler kommt wenn sl[0], sl[1] ausgefüllt sind aber er noch sl[2] brauch, dann kommt immer ein List of out Index. |
AW: Wort überspringen
Zitat:
na da müsstest du vorher prüfen ob die Stringlist schon so groß ist. ;)
Delphi-Quellcode:
// Wieviele Items hat eine Stringliste?
showmessage(IntToStr(sl.Count)); // Eine Stringliste komplett durchgehen for i := 0 to sl.Count-1 do showmessage(sl[i]); |
AW: Wort überspringen
Zitat:
Delphi-Quellcode:
procedure FillStringList(list:TStrings; count:integer);
begin while list.count < count do list.Add(''); end; // Beispiel für Aufruf FillStringList(sl, 3); ShowMessage(sl[2]); // kein List out of Index Fehler mehr |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz