|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#16
|
||||
|
||||
Цитата:
Спасибо, тоже самое что и у меня, единственное, стоило перенести отрисовку фона в процедуру с таймером и вуаля, заработало ЗЫ Кстати, двойной битмап фиксит еще, наверное, такой глюк, который я заметил - это удлинение хвостика буквы Р Последний раз редактировалось Vayrus, 22.05.2015 в 12:42. |
#17
|
||||
|
||||
Цитата:
И как же, я так и хотел изначально? |
#18
|
||||
|
||||
Так
Код:
procedure TForm1.OutText(Canvas : TCanvas; S: string; xoffset, yoffset: Integer); var T: string; begin // InValidateRect(Bmp.Canvas.handle,NIL,True); with Canvas do begin // oldbkmode := SetBkMode(Handle, Transparent); if Copy(S, 1, 1) = '#' then begin T := Copy(S, 2, Length(S)); Font.Color := $000576DC; // делаем цвет оранжевым // SetBkMode(Handle, TRANSPARENT); TextOut((ClientWidth - maxlen { TextExtent(S).cx } ) div 2 - 10 - xoffset, yoffset { + fontsize } { TextExtent(S).cy } , T); end else begin Font.Color := clWhite; // SetBkMode(Handle, TRANSPARENT); TextOut((ClientWidth - maxlen { TextExtent(S).cx } ) div 2 - xoffset, yoffset { + fontsize } { TextExtent(S).cy } , S); end; // SetBkMode(Handle, oldbkmode); end; end; procedure TForm1.Timer1Timer(Sender: TObject); var offset: Integer; begin y := y - 1; if y = -maxh then y := Height; { else if y = 10 then Sleep(1000); } offset := y; // bmBkGnd.Canvas.Draw(0, 0, bmTemp); Canvas.Draw(0, 0, bmBkGnd); // вырисовываем на форме объект Bitmap } OutText(Canvas, 'Привет', 0, offset); Inc(offset, interval); end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#19
|
||||
|
||||
У вас тоже явное мерцание есть при таком подходе?
|
#20
|
||||
|
||||
Сейчас проверю.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#21
|
||||
|
||||
Двойную буферизацию ставьте, не будет мерцать.
— Как тебя понимать? — Понимать меня не обязательно. Обязательно меня любить и кормить вовремя. На Delphi, увы, больше не программирую. Рекомендуемая литература по программированию |
#22
|
||||
|
||||
Как и сказано выше, с буферизацией не мерцает.
Хотя нет. С двумя битмапами гораздо лучше. Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. Последний раз редактировалось angvelem, 22.05.2015 в 13:10. |
#23
|
||||
|
||||
Цитата:
Стояло уже, но всеравно, с 2 лучше выходит |
#24
|
||||
|
||||
Всем участникам Спасибо)
|