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

Вниз

Как запретить очистку канвы?   Найти похожие ветки 

 
CrowD ©   (2003-03-21 15:51) [0]

Привет, All!

как запретить очистку формы перед выводом на неё изображения, а то изображение мелькает

Спасибо.


 
Darkwin ©   (2003-03-21 17:08) [1]

я от этого избавлялся так: рисовал на другой канве, а потом копировал с нее на форму(copyrect())


 
CrowD ©   (2003-03-21 18:13) [2]

я bitblt использовал, попробовал как ты говоришь и тем не мение все равно мелькает вот здесь текст функции http://delphi.mastak.ru/cgi-bin/forum.pl?look=1&id=1048236657&n=7



 
Polevi ©   (2003-03-21 18:36) [3]

WM_ERASEBKGND


 
Shaman_Naydak ©   (2003-03-21 19:09) [4]

ага, возвращаешь 1 и не вызываешь предка


 
CrowD ©   (2003-03-24 10:00) [5]

Народ спасибо за ответы но нельзя ли с кодом, для чайника, а то у меня как то не вышло, явно что то не то и не туда записал, вот мой оригинал:

procedure TForm1.FormPaint(Sender: TObject);
var
X,Y,i : Integer;
t : String;
begin
Form1.Caption := "size: "+adoqMap_size.AsString;
Y:=Y0;
while (Y*22 < Form1.Height)and(Y<adoqMap_size.AsInteger) do begin
X:=X0;
while (X*32 < Form1.Width)and(X<adoqMap_size.AsInteger) do begin
t := copy(adoqMap_map.AsString,adoqMap_size.AsInteger*Y+X,1);
BitBlt(Buffer.Canvas.Handle,X*31,Y*22,46,23, BMMask.Canvas.Handle,0,0,SrcPaint);
BitBlt(Buffer.Canvas.Handle,X*31,Y*22,46,23, BM[i].Canvas.Handle,0,0,SrcAnd);
inc(X);
t := copy(adoqMap_map.AsString,adoqMap_size.AsInteger*Y+X,1);
BitBlt(Buffer.Canvas.Handle,X*31,Y*22+11,46,23, BMMask.Canvas.Handle,0,0,SrcPaint);
BitBlt(Buffer.Canvas.Handle,X*31,Y*22+11,46,23, BM[i].Canvas.Handle,0,0,SrcAnd);
inc(X);
end;
inc(Y);
end;
BitBlt(Form1.Canvas.Handle,0,0,Form1.Width,Form1.Height,Buffer.Canvas.Handle,0,0,SrcCopy);
end;



 
REA ©   (2003-03-24 10:24) [6]

Еще у некоторых компонентов DoubleBuffered есть.
Я правда все вручную делаю, по-старинке.



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

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

Наверх




Память: 0.47 MB
Время: 0.02 c
3-6353
Explorer
2003-03-14 09:47
2003.04.03
Oracle


1-6475
ruslan_as
2003-03-24 14:03
2003.04.03
Как определить выходные дни


3-6379
MAXX_MAIL
2003-03-14 21:16
2003.04.03
DBGrid


7-6816
SMS_Men
2003-01-29 14:30
2003.04.03
Кто-нибудь пытался посылать SMS через сотовый подключенный к COM


1-6608
Navi
2003-03-22 20:12
2003.04.03
(Sender as TCustomGrid).DeleteRow не работает