Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Zeilenumbruch durch WordWrap erkennen
Coder - Mi 22.02.06 18:16
Titel: Zeilenumbruch durch WordWrap erkennen
Hi
Ich benutze ein JvRichEdit.
Nun will ich rausfinden ob eine Zeile durch #13#10 oder durch WordWrap umgebrochen wird.
Dazu hab ich folgenden Code
Delphi-Quelltext
1: 2:
| if Copy(Editor.Lines[0], Editor.GetLineIndex(0) + Length(Editor.Lines[0]) - 2, 2) = #10#13 then |
Doch so einfach scheint das nicht zu gehen. :?
Gibt es da eine Möglichkeit?
Zur Not könnte ich WordWrap auch kurzzeitig ausmachen. :gruebel:
Lannes - Mi 22.02.06 19:56
Hallo,
in Lines[x] ist der Zeilenumbruch nicht enthalten, die kann man nur aus RichEdit.Text auslesen.
Also musst Du feststellen bei welchem Zeichen die nächste Zeile anfängt, dann aus .Text die Zeichen davor prüfen.
Der Code wird vermutlich im JvRichEdit auch funktionieren:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14:
| function IsWordWrap(RE: TRichEdit;iLine: Integer): Boolean; var i : Integer; begin Result := False; i := RE.Perform(EM_LINEINDEX, iLine+1, 0); if ord(RE.Text[i-1]) <> 13 then Result := True; end;
procedure TForm1.Button6Click(Sender: TObject); begin if IsWordWrap(RichEdit1,0) then showmessage('Umbruch Durch WordWrap'); end; |
Coder - Do 23.02.06 01:36
Hi
Danke für deine Antwort!
Bei einem RichEdit funktioniert es, aber nich bei einem JvRichEdit. :(
Er zeigt immer an das durch WordWrap umgebrochen wurde.
Auch wenn man i := RE.GetLineIndex(iLine+1); benutzt.
Wies aussieht kann man das bei einem JvRichEdit nicht rausfinden.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 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!