Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Вниз

Как намутить такое, что бы............................ 


Man In Red   (2001-12-15 20:12) [0]

У меня такой вопрос:
На форме лежат RichEdit и Timer. Так вот, в RichEdite, есть текст,
и таймер каждую секунду по одному символу в тексте выделяет.

1. Как сделать, чтобы когда выделился последний символ в тексте, таймер автоматически останавливался?

2. И как сделать что бы каретка переходила на новую строку ( Если конечно есть еще одна строка, а если нет то таймер останавливался, конечно ), если выделенный символ был последним в строке?

Очень прошу, помогите, заранее благодарен!



KilkennyCat   (2001-12-16 06:56) [1]

Елементарно. Для стандартного RichEdit. (Delphi 5 tested)

procedure TForm1.Button1Click(Sender: TObject); // нажатие кнопки
begin
richedit1.SelStart := 0; // устанавливаем каретку в начало
richedit1.SetFocus; // отнимаем фокус у кнопки
timer1.Enabled := true // запускаем!
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
a : longint;
begin
a := richedit1.SelLength; // сохраним старое значение
//увеличиваем выделение на один символ
richedit1.SelLength := richedit1.SelLength + 1;
// проверяем упирание в конец строки
if a = richedit1.SelLength then begin
// пытаемся перейти на другую
richedit1.SelLength := richedit1.SelLength + 2;
// Проверяем, не уперлись ли при переходе
if a = richedit1.SelLength then begin
// уперлись, однако. Значит, конец текста. Отключаем таймер.
timer1.Enabled := false;
// сообщаем юзеру, а то он не догадается....
showmessage("Баста, карапузики!")
end
end
end;



Man In Red   (2001-12-16 13:29) [2]

НЕТ, ТЫ НЕ ПОНЯЛ!
КАЖДУЮ СЕКУНДУ ВЫДЕЛЯЕТСЯ ТОЛЬКО ОДИН СИМВОЛ, СНАЧАЛА ПЕРВЫЙ ВЫДЕЛИЛСЯ ПОТОМ ВТОРОЙ, ТРЕТИЙ И Т. Д.....................




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.08;
Скачать: [xml.tar.bz2];




Наверх








Память: 0.75 MB
Время: 0.034 c
1-22234           x000d                 2001-12-17 01:34  2002.01.08  
Активное ,не активное.


1-22119           Socol                 2001-12-15 10:45  2002.01.08  
Помогите по двум вопросам!


1-22220           Кандыль               2001-12-16 15:10  2002.01.08  
Как запретить удалять какую-либо папку, не вися в трее?


6-22312           Leviathan             2001-10-15 00:24  2002.01.08  
Эй, кто разбирается в Indy? Нужна помощь!


14-22378          модератор             2001-11-08 07:51  2002.01.08  
>Merilin