Avatar billede tokelil Nybegynder
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...
Avatar billede borrisholt Novice
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
Avatar billede tokelil Nybegynder
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... :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester