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

Вниз

Как правильно нарисовать вне формы и поверх остальных форм   Найти похожие ветки 

 
Dibroff   (2005-09-04 10:55) [0]

Создаю сплеш скрин так сказать, но хочу его создать как в фотошопе последнем, то есть вывод пнг с альфаканалом с тенями и тд. Обычная отрисовка региона формы по картинке тут не прокатит. Ну вот написал следующее.

var c: TCanvas;
...
 c := TCanvas.Create;
...
procedure DrawImage(myImage: TImage);
begin
 c.Handle := GetDC(GetWindow(GetDesktopWindow, GW_OWNER));
 c.Draw(200,200,myImage.Picture.Graphic);
end;
...
//после того как все формы создались я пытаюсь очистить канву
c.FillRect(c.cliprect);
c := nil;
c.Free;

Рисует она и выводит графику как надо. НО проблема остается в том, что картинка эта остается и ее никак не вычистить. Все эти методы не очищают канву. Я так понимаю что надо посылать сообщения всем открытым окнам и рабочему столу о необходимости перерисовки, но это кажется полным бредом. Нельзя ли изменить мой код так, чтобы моя картинка рисовалась не на чужих окнах, а на невидимом DC поверх всех окон как-нибудь (я просто понятия не имею как это сделать). Ну или как-нибудь иначе, но чтобы я мог в после создания форм грамотно очистить канву. Пожалуйста видоизмините мой код или покажите свой примерчик. заранее спасибо.


 
Dibroff   (2005-09-04 12:37) [1]

Спецы, просыпаемся ;)


 
nes ©   (2005-09-04 13:41) [2]

Invalidaterect


 
Dibroff   (2005-09-04 14:47) [3]

Да пробовал и это, не помогает



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

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

Наверх




Память: 0.47 MB
Время: 0.033 c
14-1125625951
vidiv
2005-09-02 05:52
2005.09.25
Как изменить владельца файла?


14-1125126358
kot andrei
2005-08-27 11:05
2005.09.25
Логическая цепочка чисел....


2-1124016175
Гость22
2005-08-14 14:42
2005.09.25
Как определить количество дней между двумя датами?


14-1124344469
Kerk
2005-08-18 09:54
2005.09.25
Новый ресурс о делфи. Рекомендую всем.


1-1125940732
hgd
2005-09-05 21:18
2005.09.25
Записать файл на сервер