Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

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

 
ArtemESC ©   (2006-08-09 23:49) [0]

Написал так

for i := 1 to length(str) do
begin
 Canvas.TextOut(i * 20, 100, str[i]);
 Sleep(30);
 Application.ProcessMessages;
end;

Потом убрал   Application.ProcessMessages; результат один -
выводиться только первая буква...


 
Джо ©   (2006-08-09 23:59) [1]

Ошибка где-то в ином месте.


 
ArtemESC ©   (2006-08-10 00:07) [2]

Джо ©   (09.08.06 23:59) [1]

Вот привожу всю часть после, которой это должно быть видно полностью...
str := "WORD";
len := length(str);
for i := 1 to len do
begin
 Canvas.TextOut(i * 50, 100, str[i]);
 Sleep(30);
 Application.ProcessMessages;
end;
Sleep(5000);


 
ASoft   (2006-08-10 03:17) [3]

нормально все работает, проверил :-)


 
ASoft   (2006-08-10 03:20) [4]

ну, мож не совсем, с не ровной задержкой, но печатет все буквы


 
ArtemESC ©   (2006-08-10 12:02) [5]

ASoft   (10.08.06 03:20) [4]
Сначала печатается W
А после Sleep(5000); все остальное...


 
Сергей М. ©   (2006-08-10 12:08) [6]


> ArtemESC ©   (10.08.06 12:02) [5]


А зачем вся эта беда с Proceswsmessages() понадобилась ?

Телетайп пытаешься изобразить что ли ?


 
ArtemESC ©   (2006-08-10 12:37) [7]

Сергей М. ©   (10.08.06 12:08) [6]
Телетайп - не знаю что-такое, хочу просто анимацию напечатывания
слова на канвасе, сделал так, вроде должно работать, но ..


 
Wood   (2006-08-10 12:38) [8]

ttimer?


 
Сергей М. ©   (2006-08-10 12:38) [9]

Таймер тебе в руки)


 
ArtemESC ©   (2006-08-10 12:41) [10]

Сергей М. ©   (10.08.06 12:38) [9]
А че без таймера никак...


 
Сергей М. ©   (2006-08-10 13:00) [11]


> ArtemESC ©   (10.08.06 12:41) [10]


А че на sleep"е свет клином сошелся ...


 
ArtemESC ©   (2006-08-10 13:01) [12]

Сергей М. ©   (10.08.06 13:00) [11]
Все понял в чем баг, слишком маленький промежуток в параметре Sleep(30);, видимо не успевает отрисовываться...


 
Сергей М. ©   (2006-08-10 13:04) [13]

Ну-ну


 
ASoft   (2006-08-10 13:26) [14]

идеальный вариант в этом случае (смотря на каком компе) Sleep(5000). :-) последний sleep убрать.
Рисует ровно, но ме-едленно :-)
а проще [9]


 
ArtemESC ©   (2006-08-10 15:39) [15]

Ну таймер так таймер...


 
antonn ©   (2006-08-10 18:02) [16]

ArtemESC ©   (10.08.06 0:07) [2]
len := length(str);
for i := 1 to len do
begin

можно просто for i := 1 to length(str) do


 
Loginov Dmitry ©   (2006-08-10 20:35) [17]

Выполняй необходимую отрисовку на TBitmap, а после (или до :) Sleep и ProcessMessages копируй на канву формы (Form1.Canvas.Draw(X, Y, Bitmap)). Попробуй также Form1.Update вместо ProcessMessages.



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

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.5 MB
Время: 0.047 c
3-1150814459
wezz
2006-06-20 18:40
2006.09.03
Настройка ODBC через BDE и Источники данных (ODBC)? Одно и то же?


15-1155309328
Loginov Dmitry
2006-08-11 19:15
2006.09.03
С такими проектами приходится работать


3-1151174171
gamebit3000
2006-06-24 22:36
2006.09.03
Добавление строк из одной таблицы в другую


3-1151317377
IntruderLab
2006-06-26 14:22
2006.09.03
Фильтраия по 2 и более полям


15-1155250350
Германн
2006-08-11 02:52
2006.09.03
Ну вот. И у нас тут появился спам. :-(