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

Вниз

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

 
Adios ©   (2007-03-20 13:14) [0]

как мне в мемо или ричэдит выделить URL если таковой появится, или обрезать весь текст и оставить тока ссылку?


 
Джо ©   (2007-03-20 13:17) [1]

См. по теме «конечные автоматы».


 
clickmaker ©   (2007-03-20 13:22) [2]


>  выделить URL

Pos("http://", text) и далее до пробела или >, если ссылка начинается с <


 
sniknik ©   (2007-03-20 13:39) [3]

uses RichEdit;

procedure TForm1.FormCreate(Sender: TObject);

 procedure SetVisibleLink(RichEdit: TRichEdit);
 var
   mask: Word;
   Rect: TRect;
 begin
   with RichEdit do begin
     mask:= SendMessage(Handle, EM_GETEVENTMASK, 0, 0);
     SendMessage(Handle, EM_SETEVENTMASK, 0, mask or ENM_LINK);
     SendMessage(Handle, EM_AUTOURLDETECT, Integer(True), 0);
   end;
 end;

begin
 SetVisibleLink(RichEdit1);
end;


 
sniknik ©   (2007-03-20 13:40) [4]

Rect: TRect; лишнее затесалось... (правил здесь).


 
Adios ©   (2007-03-20 13:41) [5]

text я так понял это текст из которого выборка происходит, а как мне пробелом ограничить?
например
if pos("http://",adress)>0 then showmessage(adress);
но если adress содержит пробел после ссылки и ещё символы, то сообщение всёравно выскакивает


 
clickmaker ©   (2007-03-20 13:42) [6]


> [3] sniknik ©   (20.03.07 13:39)

и у тебя это в стандартном работает? Не Rx?


 
Adios ©   (2007-03-20 13:43) [7]

у меня компилятор EM_GETEVENTMASK не пропускает, говорит что неизвестная переменная


 
sniknik ©   (2007-03-20 13:47) [8]

> и у тебя это в стандартном работает? Не Rx?
а типа Rx както по другому работает... имхо таже надстройка над стандартным, как и все компоненты.
а так как у нас использование "левых"  компонент запрещено,  приходится выкручиваться...

и кстати... перечитал вопрос, и видимо я не о том вовсе... (слово "выделить" неправильно интерпретировал ;)

> у меня компилятор EM_GETEVENTMASK
не все показанное перенес...


 
clickmaker ©   (2007-03-20 13:57) [9]


> а типа Rx както по другому работает

Rx грузит riched20.dll, если есть. А стандартный richedit32, т.е. первой версии, в которой эта фича не работает

Наследника написал?


 
sniknik ©   (2007-03-20 14:02) [10]

> т.е. первой версии, в которой эта фича не работает
в первый раз от тебя слышу... ну может раньше было... не сталкивался в общем. всегда работало.

> Наследника написал?
ничего не писал, кроме показанного, в d7 работает (в смысле ссылки выделяет, если нужно чтобы еще и кликались то там еще чуток кода надо добавить (вопроса о кликах не стояло ;о)))


 
clickmaker ©   (2007-03-20 14:09) [11]


> [10] sniknik ©   (20.03.07 14:02)

а, все понял
видимо в новых ОС riched32 просто wrapper, судя по секции импорта

RICHED20.dll
RichEdit10ANSIWndProc


 
clickmaker ©   (2007-03-20 15:37) [12]

точно. Начиная с 2000. А в 98/NT4 riched32 была отдельной версией



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

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

Наверх





Память: 0.47 MB
Время: 0.078 c
3-1168997715
Bolek
2007-01-17 04:35
2007.04.08
и снова динамические запросы


2-1173879026
Vladisllav
2007-03-14 16:30
2007.04.08
Связь двух таблиц Ib в Delphi


6-1161367061
Русло
2006-10-20 21:57
2007.04.08
Как из своего приложения запустить подключение к GPRS


1-1171344040
алексей с.
2007-02-13 08:20
2007.04.08
вывод содржимого Tcanvc на печать.


2-1174385717
gvozdkoff
2007-03-20 13:15
2007.04.08
иконка в приложении





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский