Einzelnen Beitrag anzeigen

frankg

Registriert seit: 20. Mai 2003
Ort: Wetter
72 Beiträge
 
Delphi 7 Architect
 
#3

Re: Zeilen einer Auswahl unter SynEdit erhalten

  Alt 18. Jan 2004, 19:59
Zitat von MrKnogge:
Wo issn der Code drinn ? Ich mein wann wird er ausgeführt ?

Und was machst du da mit dem perform ?

Wenn ich mich recht erinnere müsste doch gehen:
Delphi-Quellcode:
anfang := SynEdit1.SelStart;
ende := SynEdit.SelEnd;
Hallo Knogge!

Erstmal vielen Dank für Deine Antwort. Also der Code wird einfach über ein Kontextmenü aufgerufen. Ist aber auch eigentlich egal, dass einzige, was hier gewährleistet sein muss ist, dass irgendwas im SynEdit markiert ist, so dass SelStart und SelEnd einen sinnvollen Wert besitzen. Der Code, den Du geschrieben hast liefert mir einfach die Anfangs- bzw. Endposition der Markierung im Buffer zurück, d.h. er liefert die Zeichenposition im Puffer. Ich hätte aber gerne die Zeile, in der die Markierung beginnt und die Zeile in der die Markierung endet. Es gibt unter der Windows API die Message EM_LINEFROMCHAR (für Memos oder RichText-Edits glaube ich...), die eigentlich, wenn man eine Position im Buffer übergibt (geschieht in meinem Beispielcode durch mySynEdit.SelStart bzw SelEnd) die entsprechend Zeile zurückliefern soll. Alternativ zu Perform kann man auch SendMessage verwenden. Hier benötigt man allerdings das Handle des Objektes, an das man eine Nachricht schicken möchte.

StartLine := SendMessage (mySynEdit.Handle, EM_LINEFROMCHAR, mySynEdit.SelStart,0); Das funzt aber leider auch nicht.

Trotzdem vielen Dank

Frank
  Mit Zitat antworten Zitat