Форум: "Начинающим";
Текущий архив: 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.046 c