Entwickler-Ecke
Sonstiges (Delphi) - Problem mit Parser (fast) beendet
florida - Mo 28.06.10 11:59
Titel: Problem mit Parser (fast) beendet
Mein letztes Problem mit dem Parser ist nun (fast) beendet. :D
Anstatt, dass der Parser sich immer von 0 auf 1 setzt, zählt er jetzt die Zeilen.
Und siehe da: Es funktioniert. :D
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24:
| ParserLbl.Caption := '-1'; for I := 0 to Editor.Lines.Count - 1 do begin if ParserLbl.Caption = '-1' then begin if Editor.Lines[I] = 'text' then begin ParserLbl.Caption := '0'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; end; if ParserLbl.Caption = '0' then begin if Editor.Lines[I] = 'caption' then begin ParserLbl.Caption := '1'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; end; if parserlbl.Caption = '1' then begin ausgabememo.Text := editor.Lines[editor.Lines.Count-1]; end; end; |
---
Moderiert von
Narses: Beiträge zusammengefasst---
Das einzigste Problem:
Deshalb auf (fast) :wink:
Jetzt habe ich den Quelltext umgeändert, aber die nächsten Zeilen im Editor werden nicht mehr gelesen, wobei ich die Routine solange wiederhole, bis alle Zeilen vom Memo ausgelsen worden sind. Trotzdem geht es nicht. :evil:
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| if parserlbl.Caption = '1' then begin ausgabememo.Text := editor.Lines[editor.Lines.Count-1]; ParserLbl.Caption := '2'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; |
Flamefire - Mo 28.06.10 12:20
oh man...warum hörst du nie drauf was andre sagen?
Dann erstellst du haufenweise topics wo im eröffnungspost nichtmal ne Frage steht.
Deine Fehlerbeschreibung wird auch nicht besser. Was z.b. ist hier die Eingabe?
Und nachdenken tust tu anscheinend auch nicht...
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| begin if Editor.Lines[I] = 'caption' then begin ParserLbl.Caption := '1'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; end; if parserlbl.Caption = '1' then begin ausgabememo.Text := editor.Lines[editor.Lines.Count-1]; end; |
-->das memo wird auf "caption" gesetzt (alles gelöscht)
Delphi-Quelltext
1: 2: 3: 4: 5: 6:
| if parserlbl.Caption = '1' then begin ausgabememo.Text := editor.Lines[editor.Lines.Count-1]; ParserLbl.Caption := '2'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; |
Das memo wird immer noch auf "caption" gesetzt, da du alles danach ignorierst. hättest du dein :='2' nicht, dann würde es auf die letzte zeile deiner eingabe gesetzt
jaenicke - Di 29.06.10 07:58
Wozu fragst du überhaupt, wenn du es dann doch besser weißt und die Hinweise einfach ignorierst? :roll:
Und die Logik ist wirklich ein Problem, kann das sein?
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28:
| ParserLbl.Caption := '-1'; for I := 0 to Editor.Lines.Count - 1 do begin if ParserLbl.Caption = '-1' then begin if Editor.Lines[I] = 'text' then begin ParserLbl.Caption := '0'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; end; if ParserLbl.Caption = '0' then begin if Editor.Lines[I] = 'caption' then begin ParserLbl.Caption := '1'; Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); end; end; if parserlbl.Caption = '1' then begin ausgabememo.Text := editor.Lines[editor.Lines.Count-1]; end; end; |
Du postest nur stupide immer fast den gleichen Quelltext, wunderst dich, dass du mit deiner komischen Herangehensweise nicht weiter kommst und ignorierst alle entsprechenden Hinweise. Gleichzeitig sagst du nicht was du mit dem Quelltext erreichen willst, sondern postest nur den Quelltext, der so aber keinen Sinn macht...
Insofern sehe ich hier in der Diskussion auch keinen Sinn mehr.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!