![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как рисовать на экране картинки?
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"а...