Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi Pixel Schneefall :D (https://www.delphipraxis.net/88645-pixel-schneefall-d.html)

toshiba 2. Dez 2008 18:42

Re: Pixel Schneefall :D
 
gibt es wirklich keinen, der mir hlefen kann, dass meine schneeflocken in diesem format anfangen sich nach unten zu bewegen?
ich bin blutiger anfänger und habe keine ahnung, wie so etwas funktioniert... brauche es aber für die schule... xD

gruß toshiba

Noedel 2. Dez 2008 18:54

Re: Pixel Schneefall :D
 
mal n denkanstoß
du hast ein array (zweidimensional) oder ein record das die koordinaten deiner schneeflocken speichert
diese rufst du dann ab und setzt die schneeflocken auf den screen mit top und left genommen aus dem array

toshiba 2. Dez 2008 19:00

Re: Pixel Schneefall :D
 
und wie funktioniert so en array??

ich hab schon gesucht, aber ic hab keine ahnung, wie ich sowas machen soll!!!
kannst du mir vllt helfn??

Noedel 2. Dez 2008 19:10

Re: Pixel Schneefall :D
 
ok,
oben unter das
Delphi-Quellcode:
TYPE
schreibst du den Namen, den du deinem Array geben willst z.b. Tarray
dann definierst du es als Array mit
Delphi-Quellcode:
  Tarray = array
Dann braucht das Array eine Range
die definierst du mit (z.b 500 werten)
Delphi-Quellcode:
  Tarray = array [0..499]
Dann braucht das Array einen Typen, den es beinhalten soll: (hier Integer, da Zahlen als Inhalt)
Delphi-Quellcode:
  Tarray = array [0..499] of Integer;
Bei
Delphi-Quellcode:
  VAR
gibst du ihm eine Variable , wie der name schon sagt ;)
ich nenne es mal feld
also
Delphi-Quellcode:
  VAR
   ...
   feld : Tarray;
   ...

Schon hast du ein Array, das jetzt beispielsweise Zahlen beinhaltet

dem array Zuweisen kannst du etwas mit
Delphi-Quellcode:
  feld [ X ]:= random(10); //[X]= ein ganzzahliger Wert im Range des Arrays
ich hoffe das hilft

toshiba 2. Dez 2008 19:18

Re: Pixel Schneefall :D
 
hey cool danke, nur iwie meldet der jetzt: Fehler, beziechner erwartet, aber array gefunden

Sunlight7 2. Dez 2008 19:24

Re: Pixel Schneefall :D
 
Zeig doch den Quelltext, den Du geschrieben hast, dann brauchen wir nich Fehlerraten spielen ;)

Informationen über Arrays findest Du in Deiner Delphi Hilfe, einfach F1 drücken in Delphi :zwinker:

toshiba 2. Dez 2008 19:26

Re: Pixel Schneefall :D
 
Delphi-Quellcode:
unit Flocken;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, ExtCtrls, StdCtrls, MPlayer;

type
  TForm1 = class(TForm)
    Button1: TButton;
    Timer1: TTimer;
    Button2: TButton;
    Shape1: TShape;
    Tarray: array[0..1280] of integer;
    procedure Button1Click(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;
  feld:Tarray;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
begin
  timer1.Enabled:=true;

end;
       var a,x,y,x0,y0:integer;
procedure TForm1.Timer1Timer(Sender: TObject);
begin
        a:=2;
        x:=random(8)+3;
        y:=3;
        x0:=random(1500)+20;
        y0:=random(1000)+20;
 with canvas do
   begin
     Pen.color:=clwhite;
     moveto(x+x0,y0-x);
     LineTo(x0-x,y0+x);
     moveto(x0-x,y0-x);
     LineTo(x0+x,y0+x);
     moveto(x0,y0-x);
     LineTo(x0,y0+x);
     moveto(x0-x,y0);
     LineTo(x0+x,y0);
   end;
   feld [100]:=random(10);
    shape1.Left:=shape1.Left+a ;
    if shape1.left>=1280 then shape1.Left:=-20;
 end;

procedure TForm1.Button2Click(Sender: TObject);
begin
  close;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  form1.Doublebuffered:=true;
end;


end.
so siet das bis jetzt aus... xD

aber naja aller anfang ist schwer!

bigben37 2. Dez 2008 19:35

Re: Pixel Schneefall :D
 
Zitat:

Zitat von Noedel
ok,
oben unter das
Delphi-Quellcode:
TYPE
schreibst du den Namen, den du deinem Array geben willst z.b. Tarray
dann definierst du es als Array mit
Delphi-Quellcode:
  Tarray = array

So sollte das ungefähr aussehen ;-) :

Delphi-Quellcode:
type

  Tarray = array[0..1280] of integer;

  TForm1 = class(TForm)
  [...]

var
  Form1: TForm1;
  feld:Tarray;

Sunlight7 2. Dez 2008 19:37

Re: Pixel Schneefall :D
 
Also die Zeile
Delphi-Quellcode:
Tarray: array[0..1280] of integer;
darf nicht in der Dekleration Deines TForm sein.

Delphi-Quellcode:
var
  Form1: TForm1;
  feld:Tarray; // Das sollte nicht da stehen *)
Delphi-Quellcode:
type
  Tarray = array[0..1280] of integer; // Drauf achten: Kein ":" sondern ein "=" Zeichen!
  TForm1 = class(TForm)
  ...
  private
    { Private-Deklarationen }
    feld:Tarray; // *) Sondern hier    
  public
    { Public-Deklarationen }
  end;

toshiba 2. Dez 2008 19:45

Re: Pixel Schneefall :D
 
hey cool danke jetzt funktioniert das mit dem array, aber iwe shcaff ich es jetzt, dass sich die dinger nach unten bewegen??

(tut mir leid, dass ich euch so auf den sack geh, aber ich kann es NOCH nicht alleine xD)


Alle Zeitangaben in WEZ +1. Es ist jetzt 20:57 Uhr.
Seite 2 von 3     12 3      

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