Autor Beitrag
Spurius
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 142

Win XP Home
D3 Prof, D7 Prof
BeitragVerfasst: Mi 05.11.03 16:46 
hallo, ich bin absoluter neuling mit delphix und hab folgende frage:
in diesem code
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
var
  Form1: TForm1;
  x,y:integer;
implementation

{$R *.dfm}

procedure TForm1.DXDraw1Click(Sender: TObject);
begin

 x := x+5;
 y := y+5;

 dximagelist1.Items[0].Draw(dxdraw1.Surface,x,y,0);
 dxdraw1.Flip;
end;

bringe ich ein bild auf den bildschirm, dass sich bei clicks verschieben soll. es verschiebt sich auch, aber die alten bilder bleiben bestehen. Wie kann ich machen, dass nur das aktuelle bild angezeigt wird?

MfG
Spurius

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt.
mimi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3458

Ubuntu, Win XP
Lazarus
BeitragVerfasst: Mi 05.11.03 18:50 
du brauchst einen DXTimer um das bild jede 0 ms zu akualliesieren. dazu stellt du den timer einfach auf interval 0 und gut. gezeichnett sollte nur in der ONDXTimer ereignis für dein problem:
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
var
  isCilick:Bool = False;
  mausPos:TPointer

onKlick
isClick:=not isClick
MausPos.x:=x;
MausPos.Y:=y;
onTimer:
x := x+5; 
y := y+5; 

dximagelist1.Items[0].Draw(dxdraw1.Surface,x,y,0); 
dxdraw1.Flip;

soll sich die bildbposition immer verschieben oder immer gleichbleiben wenn man geklick hat ?

_________________
MFG
Michael Springwald, "kann kein englisch...."
Spurius Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 142

Win XP Home
D3 Prof, D7 Prof
BeitragVerfasst: Mi 05.11.03 19:06 
Hallo,

also das bold soll bei jedem klicj verschobe werden. bis jetzt hab ich folgenden code;
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
procedure TForm1.DXDraw1Click(Sender: TObject);
begin
 x:= x+5;
 y:= y+5;
end;

procedure TForm1.DXTimer1Timer(Sender: TObject; LagCount: Integer);
begin

 dximagelist1.Items[0].Draw(dxdraw1.Surface,x,y,0);
 dxdraw1.Flip;
end;

end.

aber die alten bilder sind immer noch da.

MfG
Spurius

Moderiert von user profile iconTino: Code- durch Delphi-Tags ersetzt.
mimi
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 3458

Ubuntu, Win XP
Lazarus
BeitragVerfasst: Mi 05.11.03 19:11 
du musst bevor du seichnes den surface wieder löschen: (ich habe schon lange nicht mehr mit delphiX gearbeitet)
ausblenden Delphi-Quelltext
1:
DXDraw1.Surface.Fill(0);					

schau mal in dieses tutor von mir:
www.delphi-forum.de/viewtopic.php?t=10073
dort wird beschrieben wie man ein Snake baut.

_________________
MFG
Michael Springwald, "kann kein englisch...."