![]() |
|
|
|||||||
| Регистрация | << Правила форума >> | 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; |
|
#19
|
||||
|
||||
|
У вас тоже явное мерцание есть при таком подходе?
|
|
#20
|
||||
|
||||
|
Сейчас проверю.
|
|
#21
|
||||
|
||||
|
Двойную буферизацию ставьте, не будет мерцать.
|
|
#22
|
||||
|
||||
|
Как и сказано выше, с буферизацией не мерцает.
Хотя нет. С двумя битмапами гораздо лучше. Последний раз редактировалось angvelem, 22.05.2015 в 13:10. |
|
#23
|
||||
|
||||
|
Цитата:
Стояло уже, но всеравно, с 2 лучше выходит |
|
#24
|
||||
|
||||
|
Всем участникам Спасибо)
|