Ok, diky moc, od vikendu na tom začnu pracovat vic, kdyžtak se ozvu ;)
Příspěvky odeslané z IP adresy 89.102.19.–
liborb, hafo diky, z tvého přispěvku jsem konečně dobře pochopil co vlastně dělám, moc diky :). Teď už mi to funguje. Respektive jsem zatim jenom u tohohle. Velikost te bitmapy je už drobnost.
Takže později až budu chtěl rozhybat kuličku tak vždycky budu muset překreslit jeji puvodni pozici kuličkou barvy jako pozadi a nakreslit ji o ten kousiček vedle? stejně tak i s nepřátelskými kuličkami?
Předpokládám že s plošinkami nebudde nejmenši problem, jen nakresleni do tohoto canvasu...
A ještě mě napadlo (doufám že už jsem se na to neptal), co kdybych to vše vykresloval přímo do canvasu toho formuláře a v něm to překresloval? Ale je to jenom takovej nápad, chápu, pokud je to nějaky špatny. Upřimně bych raději pokračoval v tomhle, abych se toho co nejvice přiučil, pokud se mnou budete mit trpělivost :)
ok, pak zkusim, ale bez řádku
vykres.Handle := GetDC(0);
mi to při spouštění vyhazuje chybu o které jsem se zmiňoval již výše.
Za ten parametr v BitBlt se omlouvám, neměl jsem tušení co to je :).
A ještě, jak přesně mysliš nahrazení té bitmapy tou vytvořenou?
Velice se omlouvám za dlouhou pauzu, ale mě jsem problémy s internetem a taky hodně práce... jestli je ještě někdo ochotný, rád bych pokračoval v projektu :).
na FormCreate tedy mam
kula:=TKula.Create;
Vykres:=TCanvas.Create;
han:=CreateCompatibleDC(canvas.Handle);
Vykres.Brush.Bitmap:=TBitmap.Create;
Vykres.Brush.Bitmap.Width:=form1.Width;
Vykres.Brush.Bitmap.Height:=form1.Height;
SelectObject(han,Vykres.Brush.Bitmap.Handle);
Vykres.Handle:=han;
vykres.Handle := GetDC(0);
dále na OnPaint mam
bitblt(form1.Canvas.Handle,0,0,40,40,vykres.Handle,0,0,0);
(snad jsem to pochopil dobře)
a na stisku tlačítka
Vykres.Brush.Color:=clyellow;
vykres.Ellipse(0,0,40,40);
Spustim program a na formuláři se mi objeví černý čtverec o souřadnicích 0,0,40,40.
Stisknu tlačítko a v levém horním rožku se mi objeví černý čtverec opět 40x40 a v něm žlutá kružnice (r=20).
Mám par otázek.
1) na co je mi tu procedura OnPaint, když už mi to vykresluje i tak?
2) jak to donutim, aby mi to vykreslovalo tu kružnici v oblasti, kde je formulář (resp. jak zjistim souřadnice formuláře na displeji)?
3) když program zminimalizuju a zmaximalizuju, kružnice zmizi. Tohle ošetřím jak?
Předem moc diky za vaši trpělivost se mnou :)