21. december 2000 - 04:26
Der er
1 kommentar og
1 løsning
Tegn i Canvas ved OnCreate?
Er det muligt at tegne et bipmap i en Forms Canvas ved formens OnCreate??
Jeg skal tegne et bipmap der fylder hele formen når programmet starter, men det fungere ikke helt... :-(
Nogen ideer til hvordan jeg kan løse det?
Kan hverken få det til at virke i C++ eller Delphi...
21. december 2000 - 08:56
#1
Hej Tokelil´
da du alligevel tegner direkte på en canvas skal du også selv holde den opdateret ....
Derfir vil jeg anbefale dig at ekklære en Bitmap af Typen TBitmap privat i din form oog så gøre sådan her :
procedure TForm1.FormCreate(Sender: TObject);
begin
BitMap:=TBitMap.Create;
BitMap.LoadFromFile(\'Task.bmp\');
Canvas.Brush.Color := clBlack;
end;
procedure TForm1.FormPaint(Sender: TObject);
var
Rect : TRect;
begin
Rect := GetClientRect;
StretchBlt(Canvas.Handle,0,0,Width,Height,Bitmap.Canvas.Handle,0,0,Bitmap.Width, Bitmap.Height,SRCCOPY);
InvalidateRect(Handle,@Rect,False);
end;
Et bedere og nemmer forslga vil være at bruge et TImage komponent. Sætte det på din form, bede det om at fylde hele formem (align to client), og loade dit billede der ind i (dobbelt click på komponentet), der efter sætter du stretch til true og vupti så er det i luften.
Jens B
21. december 2000 - 20:38
#2
Hmmm.. Har vidst droppet det med at tegne på formen igen! Der er vidst lidt lettere med TImage komponenten, selvom jeg havde besluttet jég ville prøve uden! :-)
Anyway, takker... :)