Français
Wünsche et Anregungen

Wunsch: Globale Mausposition

 
- page 1 -


Problem: qui globale Mausposition ist pas simple trop beziehen.

une zusätzliche Funktion getMousePos (vlt. get("MousePos",handle&)) fehlt, cet mets aussi qui Système %mouseX  et %mouseY .

Ist handle& zéro, ensuite ist qui Globale gemeint, andernfalls relativ vlt. comment:
KompilierenMarqueSéparation
proc MOUSE.GETPOS

    PARAMETERS H&

    SELECT %PCOUNT

        CASEOF 0

        ~GetCursorPos(MOUSE.MEM#)
        MOUSE.X&=MOUSE.MEM#.X&
        MOUSE.Y&=MOUSE.MEM#.Y&

        CASEOF 1

        DECLARE GMP#
        DIM GMP#,8
        CLEAR GMP#
        ~clientToScreen(H&,GMP#)
        var GMX%=LONG(GMP#,0)
        var GMY%=LONG(GMP#,4)
        ~getCursorPos(GMP#)
        GMX%=LONG(GMP#,0)-GMX%
        GMY%=LONG(GMP#,4)-GMY%
        MOUSE.X&=GMX%
        MOUSE.Y&=GMY%
        DISPOSE GMP#

    ENDSELECT

endproc


KompilierenMarqueSéparation
 
16.10.2009  
 



 
- page 1 -


@Dieter: mon Antwort galt Nico qui IMHO annahm, dass %mousex et %mousey simple umrechenbar wäre, quoi c'est pourquoi wenig utilise, là %mousex et %mousey seulement gesetzt volonté, si qui Mauspfeil sich sur dem HWND est. ^ ^ Dein Beispiel mais est ok, mais est im Grunde selbe comment meins dessus - je meinte seulement cela es besser wäre si XProfan %mousex et y mettons pourrait et getMousePos nativ wäre.
 
18.10.2009  
 




Dieter
Zornow
Achso, ensuite habe je aussi Nico faux verstanden, bof rapide fortschreitende Alzheimer.

mais grundsätzlich hat il droite, qui Positionen im Hauptfenster pourrait on sur Screen-Koordinaten umrechnen laisser.
Ist mais im Hauptfenster wahrscheinlich sinnfrei.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
19.10.2009  
 



chez Omikron-Basic (Atari 1040ST) hiess es aussi GetMousePos - fand je toujours joli.
 
19.10.2009  
 




Nico
Madysa
oui, dass %MouseX et -Y quelque chose eingeschränkt sommes, vergaß je, jsuis inconsolable.

ensuite wäre mais une Set-Option, qui qui beiden Système entsprechend ändert, doch wesentlich sinnvoller, ou bien?
 
Nico Madysa
24.10.2009  
 



Nico Madysa, Beitrag=54602, Zeitpunkt=24.10.2009
oui, dass %MouseX et -Y quelque chose eingeschränkt sommes, vergaß je, jsuis inconsolable.

ensuite wäre mais une Set-Option, qui qui beiden Système entsprechend ändert, doch wesentlich sinnvoller, ou bien?


get("MousePos",[Handle]) ist sinnvoll, ändert beide Sysvars.
 
24.10.2009  
 



 
- page 2 -



Nico
Madysa
peux on sich sur Untiges einigen?
KompilierenMarqueSéparation
cls
print %MouseX,%MouseY in Bezug auf %hWnd
Set("MouseOrigin",andresHandle&)
print %MouseX,%MouseY in Bezug auf andresHandle&
Set("MouseOrigin",%Desktop)
print %MouseX,%MouseY in Bezug auf globales Koordinatensystem
Set("MouseOrigin",%hWnd) 0 ginge auch
print %MouseX,%MouseY in Bezug auf %hWnd
waitinput
Nico Madysa
24.10.2009  
 



Ne - ist Müll, comme wärs de quelqu'un qui sich aucun Gedanken gemacht hat ou bien avec cela aucun Erfahrung hat.

Get("MousePos",... ist aktiv, quoi Du vorschlägst wäre passif.

Um qui Mausposition JETZT bzw. trop un certain Zeit trop beziehen (ist important ca selbst bestimmen trop peut!) - et optionnel relativ trop einem Handle od. rel.z. Bildschrim, nécessaire on une Funktion getMousePos - pourrait on joli verpacken dans get("MousePos",... là oui Système gesetzt volonté et ca imho avec qui Funktion GET im "Einklang" steht.

"GetMousePos" ist aussi joli Basichaft, kenne je jedenfalls so et fands toujours entier pratique et misse es dans XProfan seither weshalb je dans qui Souris.Inc aussi qui Funktion getMousePos hineinpackte. ^ ^

bof, explode J'ai eu aussi vermisst - quoi ist daraus geworden?!

mais naturellement, mannn peux aussi getMousePos verhunzen - pourrait on aussi get("MausÄthsaPosi",Y,Z,X) draus faire gefolgt de %x%mouse et %y%mouse. -.-

un simple getmousepos!
 
24.10.2009  
 




Nico
Madysa
So, comment du es avons veux, es du avec cela, simple qui API -- meinetwegen per Call -- trop verwenden, avec 70%-iger probabilité plus rapide et besser bedient.
 
Nico Madysa
26.10.2009  
 



quoi? Pourquoi ist une mehrzeilige XProfanfunktion plus rapide comme si Roland es nativ implementiert et comment mets je Système %mousex et y?
 
26.10.2009  
 




Nico
Madysa
veux du mir dire, dass Dieters Angebot pour deine Zwecke trop lente ist?
 
Nico Madysa
28.10.2009  
 



allez um FPS (Programmeffizienz), teste la fois den Unterschied.

pourquoi sollte qui Prozessor sur 100 courir statt seulement sur 5, chez solch wichtiger Funktion aussi chez Echtzeitanwendungen?
 
28.10.2009  
 



cela ici ist naturellement unheimlich vite, mais malheureusement dans Variablen statt Système schreibend:
KompilierenMarqueSéparation
cls
var mouse.x&=0
var mouse.y&=0
var mouse.xa&=addr(mouse.x&)
var mouse.ya&=addr(mouse.y&)

while 1

    GetMousePos(%hWnd,mouse.xa&,mouse.ya&)
    locate 1,1
    print mouse.x&,mouse.y&,"	"
    waitinput 100

wend

waitinput
end

nProc GetMousePos

    Parameters h&,ax&,ay&
    var mem&=dim(8)
    ClientToScreen(h&,mem&)
    var x&=long(mem&,0)
    var y&=long(mem&,4)
    GetCursorPos(mem&)
    x&=long(mem&,0)-x&
    y&=long(mem&,4)-y&
    dispose(mem&)
    long ax&,0=x&
    long ay&,0=y&
    return 0

endproc

(mais vlt. peut sich avec cela quand même pas mal travailler)

319 kB
Hochgeladen:28.10.2009
Downloadcounter60
Download
 
28.10.2009  
 




répondre


Topictitle, max. 100 marque.
 

Systemprofile:

ne...aucune Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

s'il te plaît s'inscrire um une Beitrag trop verfassen.
 

Options du sujet

6.193 Views

Untitledvor 0 min.
Sven Bader02.08.2021
Axel Berse01.05.2019
Walter07.04.2019
Vgdd05.06.2017
plus...

Themeninformationen

cet Thema hat 3 participant:

iF (10x)
Nico Madysa (5x)
Dieter Zornow (4x)


Admins  |  AGB  |  Applications  |  Auteurs  |  Chat  |  protection des données  |  Télécharger  |  Entrance  |  Aider  |  Merchantportal  |  Empreinte  |  Mart  |  Interfaces  |  SDK  |  Services  |  Jeux  |  cherche  |  Support

un projet aller XProfaner, qui il y a!


Mon XProfan
Privé Nouvelles
Eigenes Ablageforum
Sujets-La liste de voeux
Eigene Posts
Eigene Sujets
Zwischenablage
Annuler
 Deutsch English Français Español Italia
Traductions

protection des données


Wir verwenden Cookies seulement comme Session-Cookies à cause de qui technischen Notwendigkeit et chez uns gibt es aucun Cookies de Drittanbietern.

si du ici sur unsere Webseite klickst ou bien navigierst, stimmst du unserer Erfassung de Informationen dans unseren Cookies sur XProfan.Net trop.

Weitere Informationen trop unseren Cookies et en supplément, comment du qui Kontrolle par-dessus behältst, findest du dans unserer nachfolgenden Datenschutzerklärung.


d'accordDatenschutzerklärung
je voudrais keinen Cookie