Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2010.01.17;
Скачать: [xml.tar.bz2];

Вниз

URL   Найти похожие ветки 

 
Andrewtitoff ©   (2009-11-20 13:44) [0]

Как в RichEdit вставить ссылку?
т.е. задача такая: ссылка должна выглядеть как стандартный URL в веб-броузере ну в общем где угодно в общем такой синенький подчеркнутый текст и что бы при нажатии на нее открывался браузер с этой ссылкой...
P.S.
Как открыть ссылку в браузере - я нашел:
ShellExecute(TForm(Owner).Handle,nil,PChar("http://codesources.net/"), nil, nil,SW_SHOWNORMAL);

А вот как обрабатывать нажатие на нее - непойму, ну и как поменять ее атрибуты текста...


 
Andrewtitoff ©   (2009-11-20 14:15) [1]

Нашел!, если кому интересно - то вот оно!:

{....}
protected
procedure wndproc(var message: tmessage); override;
{....}

uses richedit, shellapi;

procedure tform1.formcreate(sender: tobject);
var
mask: word;
begin
mask := sendmessage(richedit1.handle, em_geteventmask, 0, 0);
sendmessage(richedit1.handle, em_seteventmask, 0, mask or enm_link);
sendmessage(richedit1.handle, em_autourldetect, integer(true), 0);

richedit1.text := "scalabium software"#13#10 +
" site is located at www.scalabium.com. welcome to our site.";
end;

procedure tform1.wndproc(var message: tmessage);
var
p: tenlink;
strurl: string;
begin
if (message.msg = wm_notify) then
begin
if (pnmhdr(message.lparam).code = en_link) then
begin
p := tenlink(pointer(twmnotify(message).nmhdr)^);
if (p.msg = wm_lbuttondown) then
begin
sendmessage(richedit1.handle, em_exsetsel, 0, longint(@(p.chrg)));
strurl := richedit1.seltext;
shellexecute(handle, "open", pchar(strurl), 0, 0, sw_shownormal);
end
end
end;

inherited;
end;

Только почему-то не работает когда текст заранее введен через дельфи редактор пока не начнешь редактировать...



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2010.01.17;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.005 c
15-1258140062
Германн
2009-11-13 22:21
2010.01.17
Как жить сегодня с тремя устройствами IDE?


2-1259327276
Konstantin
2009-11-27 16:07
2010.01.17
очистить xml файл


2-1257530320
Zalm
2009-11-06 20:58
2010.01.17
Странности с TMediaPlayer


2-1259046700
zorik
2009-11-24 10:11
2010.01.17
Уничтожение последней MDIChild-формы


2-1259491214
Drowsy
2009-11-29 13:40
2010.01.17
BPL и ошибки компиляции.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский