Здравствуйте, Гость
Понедельник, 25.09.2017, 06:52
Главная Главная страница форума Регистрация Вход
Новые сообщения Участники форума Правила форума Поиск
Страница 1 из 11
Модератор форума: stalker, Ekz 
Форум » Все о Delphi » Начинающим » Как вставлять текст в (rich)edit с задержкой времени
Как вставлять текст в (rich)edit с задержкой времени
mpdasaДата: Среда, 27.06.2012, 12:57 | Сообщение # 1
Ранг 1
Группа: Пользователи
Сообщений: 1
Награды: 0
Репутация: 0
Статус: Offline
У меня такая программа. Из текстового файла загружаю санскритско-английский словарь (в richedit, он невидим).
Потом с помощью комманды copy в левое окошко копирую санскритское слово, а в правое английский перевод.
И всё это у меня циркулирует в Timer.

Так вот, хочеться, чтобы после того, как в левом окошке появилось санскритское слово, была задержка времени перед вставкой перевода, чтобы я мог попробовать отгадать перевод.

Я пробовал команду sleep(2000); Не помогает, задержка происходит для всей формы.
Попробовал по-другому. Вставку в правое окно вынес в отдельную кнопку. И эту кнопку взял в Timer, выставил задержку времени. Тоже работает для всей формы а не для отдельной кнопки.
Почему так? Как решить эту задачку?

Код на всякий случай:
procedure TForm1.FormShow(Sender: TObject);
begin
k_vo_strok_dictionary:=dictionary.Lines.Count;
randomize;
x:=random(k_vo_strok_dictionary);//выбераем случайную строку

stroka:=dictionary.Lines[x];
P:=Pos(z_skobka, stroka);{номер символа разделения
санскритского слова и перевода}
san_slovo:=copy(stroka,2,p-2);//копируем сан. слово
RichEdit1.Text:=san_slovo;//вставляем сан. слово
Dlinna_stroki:=length(stroka);{нужно чтобы
правильно скопировать перевод}
perevod:=copy(stroka, p+2, Dlinna_stroki-p);//копирую перевод
RichEdit2.Text:=perevod;//вставляю перевод
end;
 
DJ_ЕвсДата: Четверг, 28.06.2012, 10:24 | Сообщение # 2
Ранг 6
Группа: Проверенные
Сообщений: 165
Награды: 3
Репутация: 1
Статус: Offline
Думаю, можно ввести байтовый счётчик с номером команды, а потом по кейсу выполнять команду, соответствующую номеру, каждый раз в таймере увеличивая счётчик.

Типа так, будет даже интереснее, с уменьшением:

Code

Глобальная переменная каунт:байт;

Баттон1.Клик
бегин
  Присвоить значение каунта = 4;
енд;

Таймер1.Таймер
Бегин
  Кейс каунт оф
   4: действие1;
   3: действие2;
   2: действие3;
   1: действие4;
  енд;

  Если каунт больше 0, то дек(каунт);

енд;


ПРОЙДИ ТЕСТ!!!!!
http://FIDO20.ru/test.php?4052&c=bbea2a1

 
Форум » Все о Delphi » Начинающим » Как вставлять текст в (rich)edit с задержкой времени
Страница 1 из 11
Поиск:

Copyright DelphiDevelop.ru © 2008-2017
Хостинг от uCoz