![]() |
AW: TStringList, Pos, PosEx usw.311
Oh, stimmt, den fehlenden Doppelpunkt habe ich übersehen. Und zur Problemstellung: versuch es doch einmal wie weiter oben vorgeschlagen, indem Du eine lokale Variable vom Typ TRichEdit deklarierst und mit nil initialisierst. Wird die entsprechende Zeile gefunden, setzt Du sie auf das entsprechende RichEdit und schreibst hinein.
|
AW: TStringList, Pos, PosEx usw.311
hi
ehm danke für den tipp, sagt mir leider aber alles recht wenig. bin doch nochn neuling ^^ |
AW: TStringList, Pos, PosEx usw.311
Ungetestet:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
function IsSameText(const str1, str2: string): Boolean; begin Result := AnsiStrIComp(PChar(str1), PChar(Str2)) = 0; end; var load: TStringlist; i: integer; RE : TRichEdit; begin RE := nil; load := TStringlist.Create; try load.LoadFromFile('C:\1.txt'); for i := 0 to load.count - 1 do begin if IsSameText('hallo eins:', load[i]) then RE := RichEdit1 else if IsSameText('hallo zwei:', load[i]) then RE := RichEdit2; if Assigned(RE) then RE.Lines.Add(load[i]); end; finally load.Free; end; end; |
AW: TStringList, Pos, PosEx usw.311
Sorry für den Doppelpunkt. Das ist der Mist wenn man drei mal täglich zwischen Delphi und VBA hin und her wechseln / denken muss. Aber schlimmer ist, wenn ich 4 Tage hintereinander nur was in Delphi gemacht habe (Codevervollständigung mit Returntaste) und dann nach VBA wechsle (Tabulatortaste) und mir ständig mir Return die Zeilen zerhauhe.
|
AW: TStringList, Pos, PosEx usw.311
*Gg* das kommt mir bekannt vor.
|
AW: TStringList, Pos, PosEx usw.311
hey jungs, letzter vorschlag funktioniert! :)
nur könntet ihr mir sagen, warum die gauge (sowie eine progressbar) ums verrecken nicht macht, was sie machen soll ?
Delphi-Quellcode:
der "counter" funktioniert, aber die gauge nicht ... total bescheuert :|
function IsSameText(const str1, str2: string): Boolean;
begin Result := AnsiStrIComp(PChar(str1), PChar(Str2)) = 0; end; var load: TStringlist; i: integer; RE : TRichEdit; begin RE := nil; load := TStringlist.Create; gauge1.Progress := 0; gauge1.MaxValue := load.Count; label2.caption := 'work in progress ... please wait'; try load.LoadFromFile('C:\1.txt'); for i := 0 to load.count - 1 do begin gauge1.Progress := i; application.ProcessMessages; if IsSameText('hallo eins:', load[i]) then RE := RichEdit1 else if IsSameText('hallo zwei:', load[i]) then RE := RichEdit2; if Assigned(RE) then RE.Lines.Add(load[i]); application.ProcessMessages; label1.caption := inttostr(i) + ' / ' + inttostr(load.count) + ' lines done'; end; finally load.Free; label2.caption := 'waiting ...'; end; |
AW: TStringList, Pos, PosEx usw.311
Was heißt "funktioniert nicht"? Passiert gar nichts, oder stimmt die Anzeige nicht?
|
AW: TStringList, Pos, PosEx usw.311
da tut sich absolut garnichts... wunderlich, davor hats noch funktioniret
//edit: habe den fehler!! man muss
Delphi-Quellcode:
NACH
gauge1.maxvalue := load.count
Delphi-Quellcode:
machen (logischerweise) :D
load.loadfromfile()
ich danke euch allen vielmals für eure hilfe und eure bemühungen, ich werd mir mal alle lösungsvorschläge genau anschauen :) |
AW: TStringList, Pos, PosEx usw.311
Jetzt habe ich es gesehen:
Zitat:
[edit] Ah, schon selbst bemerkt :) [/edit] |
AW: TStringList, Pos, PosEx usw.311
Setz doch mal den Gauge.Max Wert nach dem Laden der Datei, dann hast du auch einen Wert > 0 ;)
Das mit dem Label, das sich nicht aktualisiert hatten wir vor Kurzem schon mal. Mal suchen, oder mit Label.Repaint erzwingen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:24 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