| | |
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
Autor | Správa |
---|
Registrovaný: 28.11.12 Prihlásený: 25.01.13 Príspevky: 6 Témy: 3 |
Chcela by som vas poziadat o radu, resp pomoc.Mam urobit toto:
Napíšte program, ktorý bude postupne zapĺňať plochu štvorčekmi po radoch.
Mam toto :
var g:TCanvas; x,y:integer;
procedure stvorce(x,y:integer); begin g.Rectangle(x,y,x+10,y+10); end; procedure TForm1.FormCreate(Sender: TObject); begin x:=Canvas.Width; y:=Canvas.Height; g:=Image1.Canvas; g.FillRect(Image1.ClientRect); Randomize; stvorce(x,y); Timer1.Enabled:=true; end;
procedure TForm1.Timer1Timer(Sender: TObject);
begin; g.Brush.Color:=Random(256*256*256); stvorce(x,y); inc(x,10); if x>= g.Width then y:=y+20; stvorce(x,y); end;
// Problem je ten ze mi vykresli len ten prvy riadok a neposunie sa na zaciatok o y, suradnicu nizsie aby mi vykreslilo dalsi, v com je tam problem?
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 05.12.2012 7:48 | |
|
Nikde nenuluješ x-ovú súradnicu. Dôjdeš na pravý kraj a stále ju zväčšuješ = kreslíš mimo plátna. Kód: begin; g.Brush.Color:=Random(256*256*256); stvorce(x,y); inc(x,10); if x>= g.Width then y:=y+20; x:=0; stvorce(x,y); { Tu to vykreslis druhy krat? Na co? } end;
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 28.11.12 Prihlásený: 25.01.13 Príspevky: 6 Témy: 3 |
Vdaka, ale teraz mi kresli len jeden stvorcek ktory meni farbu , takze takto to asi nebude.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 05.12.2012 7:59 | |
|
Jo pardon, zabudol som na begin end Kód: begin; g.Brush.Color:=Random(256*256*256); stvorce(x,y); inc(x,10); if x>= g.Width then begin y:=y+20; x:=0; end; end;
Okrem toho ešte, prečo v Create nastavuješ x,y na šírku, výšku? To sa mi nezdá, daj tam nuly.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
Registrovaný: 28.11.12 Prihlásený: 25.01.13 Príspevky: 6 Témy: 3 |
Diki moc, no aby mi vzalo celu tu plochu , aspon teda ja to tak chapem resp. nechapem. Ale snazim sa.
|
|
Registrovaný: 17.07.11 Prihlásený: 29.12.20 Príspevky: 1516 Témy: 3 | Napísal BX: 05.12.2012 8:33 | |
|
Bod 0,0 je ale v ľavom hornom rohu nie? Takže potrebuješ ísť z tohoto bodu doprava (zvyšovať x) a dolu (zvyšovať y) Úprimne, neviem ako toto môže fungovať. S tými nulami by to zmysel dávalo.
_________________ Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám! |
|
| Stránka: 1 z 1
| [ Príspevkov: 6 ] | |
| Nemôžete zakladať nové témy v tomto fóre Nemôžete odpovedať na témy v tomto fóre Nemôžete upravovať svoje príspevky v tomto fóre Nemôžete mazať svoje príspevky v tomto fóre
|
|