Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
20. Dez 2006
Moin,
aus der Speicherrichtung hatte ich nicht geschaut. Ich bin mit meinen Gedanken eher aus der Richtung Optimum gekommen. Oft ist es doch so, dass bei verkürzten Verfahren ein bestimmter Wert das optimum darstellt. Also im Moment schwimme ich hier etwas rum und meine Gedanken sind weniger mathematisch als aus dem Bauch heraus.
Geht man aus Richtung Speicher an die Sache, so lässt sich der...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Sorry wenn meine Antwort nach Kritik klang. Das war es sicher nicht. Ich hab nur laut nachgedacht. Meine Frage war auch schon beantwortet und ich habe weiter gebohrt.
Sonst ganz klar, ich stimme dir voll und ganz zu. Hier zeigt sich auch wieder, dass der konkrete Anwendungsfall den speziellen Weg fordert und schnell nicht immer schnell ist. Man fragt oft nach nem schnellen Verfahren; und ohne...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi alzaimar,
nun hab ich ja was losgetreten. :roll:
Nun im Ernst. Deine Verfahren leuchten ein. Zur Sicherheit folgenden Frage: In deinem Beispiel muss die Menge H korrekt aber so aussehen?
H : (1,1,1,2,2,3,3,3,3)
Ich nehme jetzt mal an, dass IndexOf schneller als die Schleife mit Pos ist.
Nun drängt sich mir aber folgender Verdacht auf. Dauert das Erstellen des Hilfsarrays mit...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi marabu,
ich denke das ist dann eher die falsche Richtung für meinen Anwendungsfall und für ein bischen Nachhilfe am Rande wohl zu umfangreich. Somit soll's dabei bleiben.
Dank für die Antworten und beste Grüße
oki
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi,
Für meinen aktuellen Fall ist die "lahme" Methode vollkommen ausreichend. Andere Vorgänge sind eh so lahm (server basierende Datenbank; Empfang der Daten via GPRS), dass es hier nicht auf die ms ankommt. Außerdem hab ich nie mehr als 10 Zeilen mit max. 100 Zeichen im Buffer. Trotzdem interessiert es mich schon, wie man die Suchverfahren effizient gestalten kann. Zum einen schadet es...
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi kalmi01,
warum schneller?
Gruß
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi Klaus,
ich gebs auf :wall:
Natürlich wollte ich die Zeilennummer haben. Hier die x-te Korrektur:
function GetMsgStartLine(Identifier: String): Integer;
var Counter : Integer;
begin
Result := -1;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
19. Dez 2006
Hi Leute,
beginner77 hat mich auf einen Fehler aufmerksam gemacht. Hier noch mal der korrekte Code:
function GetMsgStartLine(Identifier: String): Integer;
var Counter, Index : Integer;
begin
Result := -1;
For counter := 0 to MyStringList.Count -1 do begin
Index := Pos(Identifier, MyStringList.Strings);
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
13. Dez 2006
hab's jetzt so gelöst:
function GetMsgStartLine(Identifier: String): Integer;
var Counter : Integer;
begin
Result := -1;
For counter := 0 to MyStringList.Count -1 do begin
IF Pos(Identifier, MyStringList.Strings) > 0 then begin
Result := Index;
Exit;
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
13. Dez 2006
Also doch der "lange" Weg. Naja, wollte nur sicher gehen.
Dank und Gruß oki
Forum: GUI-Design mit VCL / FireMonkey / Common Controls
Delphi
by oki,
13. Dez 2006
Hi,
ich suche die Zeilennummer in einer StringList, in der ein Teilstring das erste mal vor kommt.
Benutzt man IndexOf, so muss der gesamte String der Zeile mit dem Teilstring übereinstimmen. Geht also nicht.
als Bsp.
Index := MyStringList.IndexOf('Msg_1001');