Seite 1 von 2

Mauscursor systemweit verstecken

Verfasst: 06.09.2007 12:17
von blbltheworm
Hallo zusammen,
Mit ShowCursor_() kann man ja den MausCurser für die eigene Anwendung unsichtbar machen. Verlässt man jedoch das Anwendungsfenster taucht er wieder auf.
Gibt es auch eine Möglichkeit den Cursor für alle Fenster zu verstecken?

Verfasst: 06.09.2007 14:21
von Fluid Byte
Darf man fragen welchen Zweck das haben soll?

Verfasst: 06.09.2007 14:39
von ZeHa
Du kannst ihn einfach durch ein komplett leeres Icon ersetzen. Das ist zumindest mal die einfachste Lösung.

Verfasst: 06.09.2007 14:41
von AND51
@ Fluid Byte:
Könnte man nicht erstmal antworten und später fragen? Hier soll geholfen werden und nicht erst gefragt werden. Mich persönlich nervt es immer total, wenn man erst mal gefragt wird, wozu man überhaupt seine Idee verwirklichen will.


@ Wurmi:
Ich habe sowas auch mal gesucht. Dabei bin ich dank dieses Boards hier auf die Lösung gekommen, mit LoadCursor_() einen unsichtbaren Cursor zu laden. Nimmste einfach eine durchsichtige *.cur-Datei.
Hinterher kann man ja den Cursor wieder zurückwandeln, man kann nämlich irgendwie das Handle zum alten Cursor abfragen und somit nach Beendigung des eigenen Programms wiederherstellen.
Frag mich aber nicht wie, da müsste ich jetzt erst wieder in die Materie einsteigen...

Verfasst: 06.09.2007 15:02
von Fluid Byte
Bleibt die Frage...

Welchen Nutzen hat das? Vielleicht bin Ich zu doof um das Offentsichtliche zu sehen aber mir fällt nix ein.

Verfasst: 06.09.2007 15:15
von ZeHa
Naja also ein Grund, der bei sowas eigentlich immer paßt: Man will jemanden ärgern ;)

Verfasst: 06.09.2007 15:43
von hardfalcon
Der Code hier ersetzt einige (nicht alle) bestehende Cursor mit leeren (und offenbar irgendwie "ungültigen") Cursorn. Das Ergbnis ist aber leider nur, dass danach komplett falsche Cursor (z.B. bei mir ein Drag-and-Drop-Cursor anstatt des normalen Cursors und anstatt des Textauswahlcursors) angezeigt werden. ACHTUNG: Die Cursor werden NICHT wieder zurückgesetzt, wenn das Programm beendet wird! Weiterhin weiss ich nicht, ob sie bei einem Reboot zurückgesetzt werden (ich hoffe es aber mal, sonst hab ich nachher ein ernstes Problem mit meiner Mutter :mrgreen: ).

Code: Alles auswählen

For cursor = 32510 To 32516
  hcur = CreateCursor_(0,0,0,0,0,0,0)
  Debug cursor
Next cursor

Verfasst: 06.09.2007 15:48
von Kiffi
Fluid Byte hat geschrieben:Welchen Nutzen hat das? Vielleicht bin Ich zu doof um das Offentsichtliche zu sehen aber mir fällt nix ein.
beispielsweise wenn man ein Terminal mit Touchscreen programmieren will.
Dann kann ein Mauszeiger schon mal stören.

... andererseits... dann könnte man ja wiederum ShowCursor_() verwenden,
weil solche Applikationen zumeist im Vollbildmodus laufen...

Stimmt, Fluid, jetzt fällt mir auch kein Grund ein.

Grüße ... Kiffi

Verfasst: 08.09.2007 12:21
von blbltheworm
Also erstmal danke für die vielen Anregungen.
Ich werd mal weitersuchen und schauen wie weit ich komme.
Wenn ich feststecke melde ich mich wieder :mrgreen:.

Und da hier so ausführlich der Sinn eines sochen Codes gesucht wird.

Ich schreibe gerade an einem total genialen Tool, dass die Windowswelt revolutionieren wird :lol: :lol: :lol: .

Aber im Ernst.
Das kleine Tool hab ich nur aus Jux und Tollerei geschrieben (bzw. schreibe gerade noch daran), weil ein Freund von mir meinte "Oh man, jetzt hab ich so ein tolles Wallpaper, aber vor lauter Desktopicons seh ich es kaum."
Also hab ich ihm den gefallen getan und ein kleines Tool geschrieben, das, wenn sich die Maus eine Zeit lang nicht bewegt, alle Desktopicons versteckt.
Übrig bleibt dann nur noch der Mauscursor und den würde ich jetzt auch noch gerne los werden.

Also wie gesagt, ein total cooles Tool. Es macht den Desktop zum Screensaver :).

Verfasst: 08.09.2007 13:21
von AND51
> wenn sich die Maus eine Zeit lang nicht bewegt, alle Desktopicons versteckt. Übrig bleibt dann nur noch der Mauscursor und den würde ich jetzt auch noch gerne los werden

Das ist aber umständlich! Ich hätte es anders gelöst: Ich hätte den Pfad zum Wallpaper ermittelt und dieses dann in einem OpenScreen() oder in einem Fenster (borderless, sticky (immer im Vordergrund), genauso breit und hoch wie der Desktop) anzeigen lassen.

Bei der Variante mit OpenScreen() würde der Cursor automatisch versteckt. Die Fenster-Variante ist jedoch schneller, weil hier nicht erst in den Vollbildmodus gegangen werden muss.