Форум: "Основная";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];
Вниздаёшь гиперлинку в текст Найти похожие ветки
← →
HELamer! (2004-02-21 20:13) [0]Поможите люди добрые!!!Надо вставить ссылку в текст RICHEDITа
← →
хз (2004-02-21 23:02) [1]RichEdit.SelText:="http:\\www.твоя_ссылка";
--
LMD
← →
TUser (2004-02-22 11:28) [2]Надо сделать ее синим цветом, а потом вычислять положение курсоа мыши (что нетривиально). Когда попадешь на ссылку - руку показывать, а пи клике - открывать.
2 хз
LMD - не то чтобы это слишком деликатно звучит ...
← →
olookin (2004-02-22 11:30) [3]TUser © (22.02.04 11:28) [2]
Надо сделать ее синим цветом, а потом вычислять положение курсоа мыши (что нетривиально). Когда попадешь на ссылку - руку показывать, а пи клике - открывать.
более чем тривиально если знать как выглядит ссылка... Просто послать сообщение с параметром типа CharFromPos или PosFromChar (не помню сейчас уже)... Так или иначе а я такую фичу делал когда то и не особо мучился...
← →
olookin (2004-02-22 12:09) [4]вот что то типа этого :
var
Form1: TForm1;
b: boolean;
procedure TForm1.RichEdit1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var z1,z2,n,i,z3: integer;
p: tpoint;
s: string;
begin
with Richedit1 do begin HideSelection:=true;
p.x:=x; p.y:=y; s:=""That is hyperlink""; z1:=-1;
n:=sendmessage(handle,EM_CHARFROMPOS,0,integer(@p));
z1:=sendmessage(handle,EM_LINEFROMCHAR,n,0); z2:=0;
if (z1<>-1) and (z1>=0) and (z1<lines.count) then
for i:=0 to z1-1 do z2:=z2+length(lines[i])+2;
n:=n-z2;
//if z1<lines.count then
if (pos(s,lines[z1])<>0) and
(pos(s,lines[z1])<n) and (pos(s,lines[z1])+Length(s)>n) then begin
z3:=Pos(s,Lines[z1]); selstart:=z3+z2; sellength:=length(s);
b:=true;
SelAttributes.Color:=clred; sellength:=0; end else begin
if b then begin b:=false;
selstart:=0; sellength:=length(Text);
SelAttributes.Color:=font.color; sellength:=0; end; end;
end;
end;
Токо мелькает все - это уже проблемы выделения в риче...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.03.05;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.007 c