Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Herausfinden ob Maus gedrückt (https://www.delphipraxis.net/53447-herausfinden-ob-maus-gedrueckt.html)

igel457 16. Sep 2005 19:16


Herausfinden ob Maus gedrückt
 
Hallo,
ich programmiere gerade ein kleines Spiel mit UnDelphiX.

Da das ganze ein Strategiespiel ist möchte ich, das ich weiß mit ob ich nun auf eine Einheit geklickt habe.
Ich möchte dies nicht mit DXDraw1.OnClick lösen.

Sondern eher so:

Delphi-Quellcode:
procedure TSelSprite.DoCollision(Sprite:TSprite;var done:boolean);
var mousedown:boolean;
begin
  mousedown := //Jetzt weiß ich nicht weiter
  if (sprite is TMouseCursor) and (mousedown) then
    selected := true
end;
Danke für die Antworten!

Delphi-Freak 16. Sep 2005 19:23

Re: Herausfinden ob Maus gedrückt
 
Da gibts die Funktion GetKeyState, der dann VK_LBUTTON bzw. VK_RBUTTON angeben und die gibt dann einen SmallInt-Wert zurück. Schau dir davon mal in einem Testprogramm die Ergebnisse an. Bei jedem 2. Drücken kommen immer die gleichen Werte heraus. Genau weiß ich das leider nicht mehr...

LG

igel457 16. Sep 2005 20:04

Re: Herausfinden ob Maus gedrückt
 
Jup!

Das geht. Probleme hab ich aber keine.
Ich mach das jetzt so:

Delphi-Quellcode:
procedure TSelSprite.DoCollision(Sprite:TSprite;var done:boolean);
var mousedown:boolean;
begin
  mousedown := getkeystate(VK_LBUTTON)<0;
  if (sprite is TMouseCursor) and (mousedown) then
    selected := true
end;
Danke!

Delphi-Freak 16. Sep 2005 20:20

Re: Herausfinden ob Maus gedrückt
 
Gut!

LG, ich


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:11 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