Forum:	Software allgemein
Téma:	Mauszeiger verstecken...
--------------------------------

RedFlash:
Hi Leute,
kennt jemand ein tool, mit dem man nach dem Windowsstart den Mauszeiger ausser sichtbereich bringen kann? 
(benutze Mediacar,autostart) ansonsten schreib ich selber ein kleines vb-progi!
Mfg

the-x:
hm mach dir doch einfach n mauszeiger (ne .ico)wo der mauszeiger ein pixel groß is dann stört er nich

RedFlash:
wär auch ne idee, aber dann bleibt der auch so klein und dann ists schwer mit dem weiteren Navigieren:D
also wenn es da wirklich noch nichts gibt, werd ich mir wohl wieder mein VB6 draufwerfen müssen :wink:

bazik:
RedFlash hat folgendes geschrieben:wär auch ne idee, aber dann bleibt der auch so klein und dann ists schwer mit dem weiteren Navigieren:D
also wenn es da wirklich noch nichts gibt, werd ich mir wohl wieder mein VB6 draufwerfen müssen :wink:
Am besten mit der API Funktion 'ShowCursor'... also sowas wie
Code:
Private Declare Function ShowCursor Lib &quot;user32&quot; &#40;ByVal bShow As Long&#41; As Long
Call ShowCursor&#40;true&#41; ' oder false zum vsrstecken

Wenn du fuer den Status eine Boolean Variable nimmst kannste mit der 'not' Function immer den gegenteiligen Effekt machen. Also im Form_Load() deine Variable (z.B. 'bStatus') auf True setzen und dann einfach ein
Code:
bStatus = Not bStatus
Call ShowCursor&#40;bStatus&#41;

machen :) Eventuell mit nem Tastendruck verbinden, wenn du ne Tastatur an deinem CarPC hast, damit du per STRG-M oder so den Cursor zeigen/verstecken kannst.

RedFlash:
na das is doch mal ne nette API-Funktion:D 
Werd ich dann mal gleich ans proggen gehn!
Danke für den Tipp!

der_fleXXer:
lass das programm doch überprüfen ob sich der mauszeiger bewegt, und wenn seit 20 sek keine bewegung - *schwupp* weg isser. wenn dann wieder ne bewegung reinkommt, sofort wieder anzeigen.

RedFlash:
@der_fleXXer
sehr sinnvolle Erweiterung, kommt auf jedenfall mit rein!
In VB wenn ichs noch recht in Erinnerung hab das MouseMove-Event 
in dem dann der zeiger wieder angezeit werden muss,allerdings wenn die Form minimert oder im Hintergrund läuft dann doch eher 
über API abzufragen ?!

bazik:
RedFlash hat folgendes geschrieben:@der_fleXXer
sehr sinnvolle Erweiterung, kommt auf jedenfall mit rein!
In VB wenn ichs noch recht in Erinnerung hab das MouseMove-Event 
in dem dann der zeiger wieder angezeit werden muss,allerdings wenn die Form minimert oder im Hintergrund läuft dann doch eher 
über API abzufragen ?!
Naja das Problem mit VB ist, wie du bereits angedeutet hast, das die integrierten Funktionen primaer auf die VB Applikation selber gerichtet sind. Zudem existiert standardmaessig keine richtige MessageQueue weil VB auf Callbacks setzt.
Es ist trotzdem moeglich eine solche Queue in VB zu erzeugen (Siehe API GetWndMsg) und dann mit SetCapture die Mausevents, im speziellen WM_MOUSEMOVE, abzufangen. Alles nur eine Frage des Aufwands ;)
Wegen der von mir vorgeschlagenen STRG-M Kombination: Du kannst unter Windows ja einer Verknuepfung eine Tastenkombination zuweisen. Somit koenntest du dein Prog schon ohne weiteren Code mit STRG-M oder einer anderen Kombination starten. Dann nur noch den aktuellen Status des Zeigers abfragen und den Gegenteiligen setzen -- fertig ;)

RedFlash:
@bazik
Zitat:Wegen der von mir vorgeschlagenen STRG-M Kombination: Du kannst unter Windows ja einer Verknuepfung eine Tastenkombination zuweisen. Somit koenntest du dein Prog schon ohne weiteren Code mit STRG-M oder einer anderen Kombination starten. Dann nur noch den aktuellen Status des Zeigers abfragen und den Gegenteiligen setzen -- fertig
Das ganze muss ohne Tastatur laufen, sprich mit Autostart, der API "ShowCursor" von dir und eben einer 2. API die die Mausbewegung abfängt, dann eben die Konstante abfragen und darauf entsprechend reagieren! 
Dann wärs annähernd perfekt:D
Werd mich mal wegen der 2. API schlau machen....
Hab was gefunden, damit könnte es klappen:
Zitat:Declare Function GetCursor Lib "user32.dll" () As Long

Beschreibung:
Diese Funktion ermittelt den Handle des Mauscursors der bei der aktuellen Anwendung gerade aktiv ist. 

Funktions Rückgabe:
Ist die Funktion erfolgreich so ist die Rückgabe der Handle des aktuell aktiven Mauscursers der eigenen Anwendung, andernfalls ist der wert "0" die Rückgabe.
 

Funktions Parameter:
* keine


RedFlash:
So sollte es jetzt funktionieren. Der Mauszeiger wird egal bei welcher Auflösung ganz nach unten links ins Eck gesetzt (wo ihn niemand sieht:D ) falls es jemand verwenden möchte file is anbei!
mfg

rosette:
klazze das du was geproggt hast aber da gibts doch bei installiertem Touchkit (lili) das maus Schema "Hide Cursor" wie waers denn damit?

RedFlash:
hab weder touch noch nen lilli!:wink:
bei mediacar gibts auch die Option, allerdings versteckt die den Mauszeiger generell und ohne touch daher nicht zu gebrauchen.
Wollte ja nur erreichen, dass beim ersten Start des Systems der Mauszeiger weg ist8)
Mit nem Tastenkürzel in der Verknüpfung, wie bazik schon sagte, kann man den Zeiger dann bei Bedarf erneut unsichtbar machen...
