Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как рисовать на экране картинки?


Xomer ©   (2002-07-27 19:24:00) 

Когда использую данный код
procedure Tform1.DrawOnScreen;
var
DC : HDC;
DesktopCanvas : TCanvas;
begin
DC := GetDC(0); // получили DC экрана
try
DesktopCanvas := TCanvas.Create;
DesktopCanvas.Handle := DC;
ImageList1.Draw(DesktopCanvas,x,y,n);
finally
ReleaseDC(0, DC);
DesktopCanvas.Free;

Картинки из imagelist накладываются друг на друга. Т.е необходимо, чтобы на экране была отображена только одна картинка, поэтому видимо нужно что-то типа refresh для экрана. Думается, это позволит удалить предыдущую картинку и затем рисовать другую. Хотя может это глупый способ, поскольку из-за этого анимация будет (а я в принципе, анимацию и пытаюсь сделать) никакая, поскольку картинка будет моргать из-за постоянного refresh. Так как же рисовать на экране картинки да так, чтобы они на накладывались друг на друга?


Xomer   (2002-07-27 21:09:00) [1]

2 Wicked
Исходник! Исходник! Исходник!
Ну, пожалуйста, покажи на примере кода.


wicked   (2002-07-27 20:08:00) [2]

забирать с твоего DesktopCanvas кусок экрана, на котором будет картинка, в отдельный bitmap...
а потом, на следующий кадр, восстанавливать необходимый кусок из bitmap"а...


Наверх

Титульная страница Поиск, карта сайта Написать письмо