Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 12. 06. 2014 15:18 — Editoval Rassend (12. 06. 2014 15:20)

Rassend
Příspěvky: 94
Reputace:   
 

Delphi .. Easy program .. Pomoc

procedure TForm1.Button3Click(Sender: TObject);
begin
Form1.Image1.Canvas.brush.Color := clwhite;
Form1.Image1.Canvas.Rectangle(0,0,1000,1000);
x0:=500;
y0:=200;
x1:=20;
y1:=50;
x2:=40;
y2:=40;

Form1.Image1.Canvas.Pen.Color := clblack;
//tryska
Form1.Image1.Canvas.MoveTo(x0-12,y0-60);
Form1.Image1.Canvas.LineTo(x0-12,y0-180);
Form1.Image1.Canvas.MoveTo(x0+12,y0-60);
Form1.Image1.Canvas.LineTo(x0+12,y0-180);
// tryska

Form1.Image1.Canvas.Pen.Color := clblack;
//nadoba
Form1.Image1.Canvas.MoveTo(x0-x1,y0-y1);
Form1.Image1.Canvas.LineTo(x0-x2,y0-y2);
Form1.Image1.Canvas.LineTo(x0-x2,y0+y2);
Form1.Image1.Canvas.LineTo(x0-x1,y0+y1);

Form1.Image1.Canvas.LineTo(x0+x1,y0+y1);

Form1.Image1.Canvas.MoveTo(x0+x1,y0+y1);
Form1.Image1.Canvas.LineTo(x0+x2,y0+y2);
Form1.Image1.Canvas.LineTo(x0+x2,y0-y2);
Form1.Image1.Canvas.LineTo(x0+x1,y0-y1);


Form1.Image1.Canvas.MoveTo(x0+188,y0+0);
Form1.Image1.Canvas.LineTo(x0+188,y0-100);
Form1.Image1.Canvas.MoveTo(x0+212,y0+0);
Form1.Image1.Canvas.LineTo(x0+212,y0-100);
//nadoba
end;

Celkem jednoduchy program potrebuju ... je to nadoba do ktere se ma vsunout tryska po kliknuti na tlacitko... Zajima me jak to udelat ? :-O Vykreslene uz mam nadobu i trysku ale jak udelat aby se hybala to mi hlava nebre .. Tak diky za kazdou pomoc

Offline

 

#2 13. 06. 2014 17:17

Wrunx
Příspěvky: 65
Reputace:   
 

Re: Delphi .. Easy program .. Pomoc

No, v Delphi by mohl být nějaký timer (časovač)? Trysku je potřeba udělat jako nějaký OBJEKT, a pak by se po kliknutí dal spustit timer, a souřadnice trysky navázat na jeho tikání. Pokud nemá, možno zkusit navázat pohyb trysky na čas počítače... Anebo po kliknutí spustit proceduru která by obsahovala obyčejný cykl počítající souřadnice trysky, třeba s nějakou pauzou mezi jednotlivými kroky.

Offline

 

#3 16. 06. 2014 12:59

Honzc
Příspěvky: 4641
Reputace:   248 
 

Re: Delphi .. Easy program .. Pomoc

↑ Rassend:
Trysku si namaluj na nový obrázek (třeba Image2)
Umísti ho na počáteční souřadnice a rozpočítej si o kolik má tryska klesnout (třeba o 100 pixelů)
V obsluze kliknutí tlačítka pak udělej v cyklu něco takového

for i := 1 to 10
begin
  Application.ProgressMessages;
  Image2.Top := Image2.Top+10;
  Sleep(60);
end;

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson