![]() |
Re: Text aus Textdatei in TEDIT auslesen und wieder speiche
Hallo... :hi:
Es müssen immer die "define" Zeilen sein. Es ist nur ein Beispiel! Die Zeilen können auch länger sein. Ich will später dann evt. noch umformatieren, das ist aber alles nicht das Problem.
Code:
[]
define('TEXT_MAINA', '17:08:00 43 111 0 2431 800 10 ,, 5 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('TEXT_MAINB', '17:09:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('TEXT_MAINC', '17:10:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('TEXT_MAIND', '17:11:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); A !!LOG['ID']### ! define('O', '18:11:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('S', '18:12:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('W', '18:13:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('N', '18:14:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); ! DATA(LOG : '11.05.2006') !# ! B !!LOG['ID1']### ! define('K', '18:15:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('L', '18:16:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('M', '18:17:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); define('P', '18:18:00 43 111 0 2431 800 10 5 ,, 12 43 0 0 0 0 66 99 0 0 / 26.0?Tin 9.9Vex 0.0Vbl 0.0Vbr O- S-'); ! DATA(LOG : '11.05.2006') !# ! [] |
Re: Text aus Textdatei in TEDIT auslesen und wieder speiche
Hallo Mirco,
wenn die Zeilen deutlich länger werden, dann wird es so oder so problematisch eine komfortable Benutzerschnittstelle zu gestalten. Ich würde beim VLE bleiben und nur bei Bedarf ein anderes Control (Memo?) einblenden:
Delphi-Quellcode:
Jetzt muss ich aber wirklich ins Bettchen.
procedure TDemoForm.LoadFile(fn: TFileName);
const S_DEF = 'define('; var i: Integer; line, sName, sText: String; pc: PChar; begin with TStringList.Create do begin LoadFromFile(fn); VLE.Strings.Clear; for i := 0 to Pred(Count) do begin line := Trim(Strings[i]); if AnsiStartsText(S_DEF, line) then begin pc := PChar(line); Inc(pc, Length(S_DEF)); sName := AnsiExtractQuotedStr(pc, ''''); Inc(pc, 2); sText := AnsiExtractQuotedStr(pc, ''''); VLE.Strings.AddObject(sName + '=' + sText, Pointer(i)); end; end; Free; end; end; procedure TDemoForm.SaveFile(fn: TFileName); const S_FMT = 'define(%s, %s);'; var i, iLine: Integer; sName, sText: String; begin with TStringList.Create do begin LoadFromFile(fn); for i := 1 to VLE.Strings.Count do begin sName := VLE.Keys[i]; sText := VLE.Values[sName]; iLine := Integer(VLE.Strings.Objects[Pred(i)]); Delete(iLine); Insert(iLine, Format(S_FMT, [AnsiQuotedStr(sName, ''''), AnsiQuotedStr(sText, '''')])); end; SaveToFile(fn); Free; end; end; marabu |
Re: Text aus Textdatei in TEDIT auslesen und wieder speiche
Hallo marabu,
ich werde mit der VLE weiter machen. Geil was man damit alles machen kann, hatte mich mit der Komponente noch nicht beschäftigt Vielen, vielen Dank für deine große Hilfe. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:22 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