"Thomas Eg J rgensen" <thomas@kontorbutikken.dk> wrote in message news:<b1ovvo$5v9$1@sunsite.dk>...
> "Thomas Eg Jørgensen" <thomas@kontorbutikken.dk> wrote in message
> news:b1orvc$ela$1@sunsite.dk...
> > Jeg har forsøgt at sætte ejeren af min komponent til doublebuffer:=false;
> > men det hjælper ikke rigtigt...
>
> Jeg mente selvfølgelig doublebuffer:=true;
>
>
>
> MVH
> Thomas
Overskriv WM_ERASEBKGND, så er du sikker på at din komponent ikke
flicker.
Eks:
private
procedure WMEraseBkgnd(var AMessage : TWmEraseBkgnd); message
WM_ERASEBKGND;
....
procedure TMyControl.WMEraseBkgnd(var AMessage : TWmEraseBkgnd);
begin
// Slet ikke baggrunden.
end;
Ulempen ved ovenstående er at din Paint skal tegne over det hele
(incl. alle flader), ellers bliver der vist noget mærkeligt på
skærmen.
Men jeg forstår ikke hvorfor DoubleBuffered ikke fjerner flickeriet,
hvilken klasse nedarver din komponent fra?
/Casper