Lazarus: Aktuelle Zeile in Memo abfragen
Frage von Gast | Letztes Update am 02.05.2022 | Erstellt am 22.01.2014
Ich würde gerne mit Lazarus den Index der Zeile in einem TMemo ermitteln in dem ein Nutzer gerade etwas schreibt.
Meine bisherigen Recherchen haben leider nur eine Lösung für Delphi ans Licht gebracht, mit der man die Position von Zeile und Spalte innerhalb eines Memos bestimmen kann:
Line := Memo1.Perform(EM_LINEFROMCHAR, Memo1.SelStart, 0) ; Column := Memo1.SelStart - Memo1.Perform(EM_LINEINDEX, Line, 0) ;
In Lazarus funktioniert es so nicht (Fehlermeldung: "Identifier not found EM_LINEFROMCHAR"). Hat jemand eine Lösung?
Ähnliche Themen
Mehrere Texte gleichzeitig ersetzen
Tutorial | 0 Kommentare
MySQL: Zeilenumbrüche in MySQL
Tipp | 0 Kommentare
MySQL: Aktuelles Datum oder Zeit in Spalte schreiben
Tutorial | 0 Kommentare
JavaScript: Aktuelle Uhrzeit und Datum ermitteln
Tutorial | 3 Kommentare
PHP: Zeit und Performance messen
Tutorial | 0 Kommentare
PHP: Aktuelles Datum und Zeit ermitteln
Tutorial | 0 Kommentare
Delphi/Lazarus: STRG+C in Memo oder Edit abfangen und Zwischenablage manipulieren
Tutorial | 0 Kommentare
Wichtiger Hinweis
Bitte beachten Sie: Die Beiträge auf askingbox.de sind Beiträge von Nutzern und sollen keine professionelle Beratung ersetzen. Sie werden nicht von Unabhängigen geprüft und spiegeln nicht zwingend die Meinung von askingbox.de wieder. Mehr erfahren.
Jetzt mitmachen
Stellen Sie Ihre eigene Frage oder schreiben Sie Ihren eigenen Artikel auf askingbox.de. So gehts.
Es geht sogar noch viel einfacher.
Probiere mal das hier aus:
CaretPos ist die Position des Cursors und die hat eine X und eine Y Variable, in der genau das stehen sollte, was du suchst.
Soweit ich weiß sind "Perform" und "EM_LINEFROMCHAR" typisch für die Windows-Welt und daher nicht für das plattformunabhängige Lazarus zu gebrauchen.
Letztes Update am 02.05.2022 | Erstellt am 22.01.2014
Die Antwort des anderen Gastes ist die beste Lösung.
Wenn Sie Ihren ursprünglichen Weg gehen möchten, müssten Sie im Uses-Abschnitt "Windows" angeben.
01.02.2022 um 23:53