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

Вниз

DelphiX Бегушая строка   Найти похожие ветки 

 
elected   (2004-11-24 08:11) [0]

Мастера
помогите с исходником бегущей сроки на DelphiX
просто с помошью обычных компонет не устраевает скорость
нужна плавная (сдвиг 1 пиксель)
Я так понимаю это всего 2 строчек кода
Но вот ну незнаю я DelphiX


 
Дмитрий Ботвин   (2004-11-25 14:53) [1]

Делай в виде графики бегущую стоку тогда
будет плавное перемещение. Я делал так:

//Отрисовка бегущей строки
procedure TForm2.DrawCanvas;
 begin
   BitMap := TBitmap.Create;
   Bitmap.Width := Image2.Width;
   Bitmap.Height := Image2.Height;
   Bitmap.Canvas.Brush.Color := clBlack;
   Bitmap.Canvas.Font.Name := "Times New Roman";
   Bitmap.Canvas.Font.Size := 25;
   Bitmap.Canvas.Font.Color := clYellow;
   TW := Bitmap.Canvas.TextWidth(txt);
   X := Image2.Width;
 end;

//Бегущая строка по таймеру
procedure TForm2.Timer2Timer(Sender: TObject);
 begin
   Bitmap.Width := Image2.Width;
   Bitmap.Height := Image2.Height;
   Bitmap.Canvas.Polygon([Point(0,0), Point(Image2.Width,0), Point(Image2.Width,Image2.Height), Point(0,Image2.Height)]);
   X := X - 3;
   if X <= -TW then X := Image2.Width;
   Bitmap.Canvas.TextOut(X,0,Txt);
   Image2.Canvas.Draw(0,0,Bitmap);
 end;


 
elected   (2004-11-26 07:55) [2]

Это все понятно =-)
но дело в том что кросе бегущей строки на форме много изменяющейся графики и бегущая строка сделанная по методу Дмитрий Ботвин тормозит
к тому же скорости ее не достаточно даже если таймер поставить на 1 миллисекунду так как для плавности сдвиг нужен 1 пиксель
вобщем нужен пример для  DelphiX или хотя бы намек как создать объект и двигать его
Еще важным параметром является загрузка процессора
обычным методом такая бегущая строка съедает много ресурсов.


 
Дмитрий Ботвин   (2004-11-26 14:43) [3]

Так ты бегущую строку в отдельном потоке отрисовывай, тогда и тормозить ничё не будет. У меня этот вариант 100-пудово работает.


 
elected   (2004-11-27 10:42) [4]

не не катит в отдельном потоке пробывал
че только я не делал и в потоке, и системный таймет создавал в место обычного
у меня много другой графики все равно не канает



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

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

Наверх




Память: 0.47 MB
Время: 0.034 c
1-1109675957
Cosinus
2005-03-01 14:19
2005.03.13
Почему "залипают" image.width и image.height при FormResize?


1-1109239688
Sa1nt
2005-02-24 13:08
2005.03.13
Обработка текстового файла


8-1101423024
ункновн
2004-11-26 01:50
2005.03.13
Обработка изображения в Direct3D


11-1092757042
ecm
2004-08-17 19:37
2005.03.13
2Kladov : Bug Fix OnIdle?


1-1109248438
evg00
2005-02-24 15:33
2005.03.13
DBGrid