Thema: Delphi DelphiX DoCollision

Einzelnen Beitrag anzeigen

Igotcha

Registriert seit: 22. Dez 2003
544 Beiträge
 
Delphi 2006 Professional
 
#1

DelphiX DoCollision

  Alt 29. Dez 2003, 13:08
Hallo zusammen,

ich möchte bei der Mausberührung mit einem Sprite eine zusätzliche grafische Information in Form eines weiteren Sprites am Bildschirm anzeigen - befindet sich der Mauscursor nicht mehr auf dem Sprite soll die Zusatzinformation ausgeblendet werden.

Warum funktioniert folgender Code nicht?

CardSprite ist das Sprite, welches ein situationsabhängiges Bild zusätzlich anzeigt.

Delphi-Quellcode:
procedure TACard.DoCollision(Sprite: TSprite; var Done: Boolean);
begin
  inherited;
  if Sprite is TCursorSprite then
  begin
    //beep;
    frmMain.DXSCARD.Items.Clear;
    frmMain.DXSCARD.Items.Add;
    frmMain.DXSCARD.Items[0].Picture.loadfromfile(MYPFAD+fed+'\small\'+fnummer+'.jpg');
    frmMain.DXSCARD.Items[0].Name:='scard';
     frmMain.DXSCARD.Items.Restore;
    CardSprite.Image :=frmMain.DXSCARD.Items.Find('scard');
    CardSprite.Width:=90;
    CardSprite.Height:=127;
    CardSprite.X:=50;
    CardSprite.Y:=300;
    CardSprite.Visible:=true;
   end
   else
   CardSprite.Visible:=false;
end;
Die Routine funktioniert bis auf das Ausblenden des CardSprites

Delphi-Quellcode:
else
   CardSprite.Visible:=false;
wunderbar, denn nach einer ersten Collision ist CardSprite immer sichtbar. Es werden auch korrekt die Bilder geladen, nur bekomme ich, wenn sich die Maus nicht über einem TACard-Objekt befindet, das Sprite nicht unsichtbar.

Gruß Kay
  Mit Zitat antworten Zitat