Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Что-нибудь типа ReadOnly. [D6]


LiNkS ©   (2002-03-28 15:30:00) 

У меня в компоненте RichEdit програмно выделяются и заменяются некоторые слова. Это прокатит, только когда не стоит РидОнли, но мне нужно, чтоб юзер мог выделять текст, копировать его, но не изменять! Как это сделать???


serg   (2002-03-29 10:00:00) [1]

Это уж кому как нада :)


MBo   (2002-03-29 09:47:00) [2]

только не SelAttributes, a DefAttributes


serg   (2002-03-29 09:43:00) [3]

SelAttributes.Protected:=True;


MBo   (2002-03-29 09:16:00) [4]

после каждого программного делай ;)
а из ручных разрешается только перенос куска в другое место
(Dragging или Cut/Paste), отслеживается только длина.


LiNkS   (2002-03-29 08:59:00) [5]

У меня же все время происходят программные изменения!


MBo   (2002-03-28 19:08:00) [6]

у меня подразумевается, что заполнение в Design-time
r:=richedit1.text; делай после прогр. изменений


MBo   (2002-03-28 18:31:00) [7]

а у меня нет ;)

а ты разобрался?
добавь
procedure TForm1.RichEdit1Exit(Sender: TObject);
begin
if richedit1.text<>r then
richedit1.text:=r;
end;


LiNkS   (2002-03-28 17:29:00) [8]

Этот код удаляет любой текст из РичЭдита... :(


MBo   (2002-03-28 16:07:00) [9]

извращаться надо
var r:string;


procedure TForm1.RichEdit1Change(Sender: TObject);
var s:string;
lr,ls,lt:integer;
begin
s:=clipboard.astext;
ls:=length(s);
lr:=length(r);
lt:=length(richedit1.text);
if lt=lr then begin
r:=richedit1.text;
exit
end;
if lr<>ls+lt then
richedit1.text:=r;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
r:=richedit1.text;
end;


Goblinus   (2002-03-28 15:39:00) [10]

Программно при установленном ReadOnly = True изменять содержимое RichEdit"a можно, а визуально - нет. Чего-то вы путаете...


Наверх

Титульная страница Поиск, карта сайта Написать письмо