![]() |
Animiertes randomize
Hallo Leuts,
wie man aus einer Zahlen-Range eine zufällige ermittelt ist klar. Aber wie kann man das visuell darstellen? Ich meine ein schnelles "durchrattern" der Zahlen bis zum Stillstand. Ich fürchte das dies immer nur eine Animation ist , nie die "echten" Zahlen,oder? Grüsse aus der brühenden Hitze einer Dachwohnung :x |
Hallo Privateer3000,
jedes Canvas kennt das Array Pixels. Du könntest x und y durch Zufall ermitteln und den Punkt farbig (eventuell auch noch zufällig) darstellen. Wäre das so was, was du meinst? |
Dazu muss ich mich erstmal mit Canvas mehr beschäftigen.
Bisher hab ich es nur mit Textout verwendet, mal sehen ob ich zurechtkomme. Mit x und y meinst Du bestimmt Koordinaten?? Grüsse |
Versuch es mal so:
Code:
Schöne Animation mit den Progessbars.
procedure TForm1.FormCreate(Sender: TObject);
begin Randomize; Progressbar1.Max := Width; Progressbar2.Max := Height; end; procedure TForm1.Timer1Timer(Sender: TObject); var x, y: DWORD; begin x := Random(Width); y := Random(Height); Form1.Canvas.Pixels[x,y] := clRed; Form1.Canvas.Pixels[x+1,y+1] := clRed; Form1.Canvas.Pixels[x+1,y] := clRed; Form1.Canvas.Pixels[x,y+1] := clRed; Progressbar1.Position := x; Progressbar2.Position := y; end; |
sorry, aber ich fürchte das verstehe ich nicht.
ok,nehmen wir ein Beispiel "aus dem Realen Leben" - Kartenspiel :lol: Spielkarten :32 Jetzt soll eine zufällige ermittelt werden.Die ermittlung soll 3sek dauern. In diesen 3 sek soll eine Animation alle Karten durchrattern, visuell. Setzt man dafür eine "fertige" z.b. mit eine Gif-Animator erzeugte Animation ein oder kann man das mit Delphi auch machen? |
Spiel doch diese drei Sekunden eine kleine AVI-Datei ab.
|
das hab ich mir fast gedacht....
mit den Zahlen ist es ebenso...richtig?? |
Wenn du gerade von Karten redest:
![]() |
Hallo Privateer3000,
wenn du die Cards Kompo, die jbg vorschlägt, installiert hast. Ziehe eine Karte auf deine Form und setze ShowCard auf True. Füge eine Timer Kompo hinzu und setze Enabled auf False und Interval auf 100. Dann füge den folgenden Code dem OnTimer Ereignis zu: [code:1:2cb5f3cf4d]procedure TForm1.Timer1Timer(Sender: TObject); begin Timer1.Tag := Timer1.Tag +1; if Timer1.Tag = 30 then begin |
@Privateer3000
Um mal auf die Frage zu kommen - richtige Zahlen darstellen und nur eine kleine vorbereitete Animation? Eigentlich völlig egal. Es kommt nur auf die Zahl am Ende an und diese sollte die richtige sein. Aber mal ehrlich, wenn Du die letzte Zahl darstellen kannst, dann kannst Du doch auch die Zufallszahlen zwischendurch mit Hilfe der gleichen Prozedur darstellen, oder? |
@ Spocki
Danke für den Vorschlag...mit installieren meinst du sicherlich als Komponente installieren.Muss das fragen da ich es noch nicht gemacht habe.(War bisher mit den vorhanden zufrieden :wink: ) Ich probiere es mal aus! Danke! @sakura Ich wollte es doch nur mal Interessehalber mal wissen.Sicherlich würde das auch gehen, würde es doch bloss mal ausprobieren wollen. Aber mit den Karten ist schon interessant...kann man vielleicht irgendwo verwenden.So als Zeitvertreib :mrgreen: im Büro |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:32 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz