Entwickler-Ecke
Sonstiges (Delphi) - Genaue Erklärung meines Projektes
florida - So 27.06.10 07:35
Titel: Genaue Erklärung meines Projektes
Nochmal: :wink:
Ich wollte ja vor kurzer Zeit einen sehr einfachen Scanner auf meine eigene Art und Weise programmieren.
Hier nochmal der Quelltext:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| ParserLbl.Caption := '0'; for I := 0 to Editor.Lines.Count - 1 do begin if Editor.Lines[I] = 'text' then begin Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '1'; end; ParserLbl.Caption := '0'; if Editor.Lines[I] = 'caption' then begin Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '1'; end; if parserlbl.Caption = '1' then begin line := sendmessage(handle, EM_LINEFROMCHAR, charpos, 0); ausgabememo.Lines.Add(IntToStr(line)); end; |
Hier soll die erste Zeile gelesen werden. Falls dort "text" steht, soll beim ParserLbl 1 angezeigt werden, damit das Programm weiß, dass die Syntax korrekt ist. Falls dort 1 steht, muss eine Zeile runtergescrollt werden, wobei dort ebenfalls überprüft wird, ob die Syntax von bspw. caption richtig ist. Sollte es erneut korrekt sein, wird wieder die Zahl 1 angezeigt und runtergescrollt. Und falls erneut beim ParserLbl die 1 steht, muss der Text von der entsprechenden Zeile in ein anderes Memo übertragen werden.
---
Moderiert von
Narses: Beiträge zusammengefasst---
Kurze Anmerkung:
ParserLbl muss nach jedem Befehl auch immer auf 0 umschalten, da es ja möglich wäre, dass das nächste Befehl falsch ist.
jaenicke - So 27.06.10 08:17
florida hat folgendes geschrieben : |
Falls dort "text" steht, soll beim ParserLbl 1 angezeigt werden, damit das Programm weiß, dass die Syntax korrekt ist. |
Das
Programm?!?
Ein Label ist zur Anzeige für den
Benutzer.
Wenn es nur um die Verarbeitung durch das Programm geht: Wie wäre es mit einer simplen Variable...
florida hat folgendes geschrieben : |
Delphi-Quelltext 1: 2: 3: 4: 5: 6:
| if Editor.Lines[I] = 'text' then begin Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '1'; end; ParserLbl.Caption := '0'; | |
florida - So 27.06.10 14:01
Zitat: |
// wozu, du setzt die Caption doch direkt nach dem Befehl ohnehin wieder auf 0... |
Wie schon beschrieben, könnte es ja möglich sein, dass das "caption" hinterher falsch geschrieben worden ist und sonst bleibt ja die 1 trotz falscher Syntax stehen.
jaenicke - So 27.06.10 14:19
Dann lass die Zeile doch weg. :nixweiss:
Delphi-Quelltext
1: 2: 3:
| if Editor.Lines[I] = 'text' then Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '0'; |
ALF - Mo 28.06.10 10:41
Hi,
florida
Du machst ein neuen Thread auf um zu erklären wie Dein Projekt funktionieren soll/möchte!
Dabei gibst Du nur den selben Code an wie schon im letzten
Thread [
http://www.delphi-forum.de/viewtopic.php?t=100142] :gruebel:
Schon Diskutiert man wieder über Sinn und Unsinn mit Deinem Labels!
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19:
| ParserLbl.Caption := '0'; for I := 0 to Editor.Lines.Count - 1 do begin if Editor.Lines[I] = 'text' then begin Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '1'; end; ParserLbl.Caption := '0'; if Editor.Lines[I] = 'caption' then begin Editor.Perform(WM_VSCROLL, SB_LINEDOWN, 0); ParserLbl.Caption := '1'; end; if parserlbl.Caption = '1' then begin line := sendmessage(handle, EM_LINEFROMCHAR, charpos, 0); ausgabememo.Lines.Add(IntToStr(line)); end; |
Du gehst jetzt nur von
2 Suchbegriffen aus! Wie willst Du es bei <2^x machen?
Mal darüber nachgedacht!!!!
Du solltest diese Antworten
-hier- [
http://www.delphi-forum.de/viewtopic.php?t=100142], erstmal
richtig durchlesen und dann
darauf, oder jetzt hier, Antworten!
Du hast dich in eine Sache verbissen, die man
Effektiver lösen kann, steht auch schon im alten Thread drin!
Schade :?!?:
Gruss Alf
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!