Registriert seit: 6. Mär 2003
Ort: Meißen
876 Beiträge
Delphi 10.1 Berlin Professional
|
Re: RichEdit OnMouseOver text highlighten
7. Feb 2004, 15:32
Hallo
ich hab irgendwann mal das verzapft:
Delphi-Quellcode:
procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
Var pt:tpoint;
i,iAnfang,iEnde:integer;
s: string;
begin
pt:= point(x,y);
i := SendMessage(RichEdit1.Handle, EM_CHARFROMPOS, 0, longint(@pt));
//anfang und ende suchen
iAnfang := i;
iEnde := i;
while (iAnfang>0) and ( not (RichEdit1.Text[iAnfang] in [' ',' .',' ,',' ;',#13,#10]) ) do dec(ianfang);
while (iEnde<length(RichEdit1.Text)) and ( not (RichEdit1.Text[iEnde] in [' ',' .',' ,',' ;',#13,#10]) ) do inc(iEnde);
s:=copy(RichEdit1.Text,iAnfang+1,iEnde-iAnfang-1);
label1.Caption := ' "'+s+' "';
end;
würd dir das Wort unter dem Mauscursor in einem Label1 anzeigen. Kannst dann mit IAnfang weiterarbeiten und mit selstart, Selattributes etc deine Farbe ändern. (alte Markierung merken und wenn Maus über neuem Wort wieder die ürsprüngliche farbe herstellen ...)
Mfg Frank
Lükes Grundlage der Programmierung:
Es wird nicht funktionieren
(Murphy)
|
|
Zitat
|