5

I need to get an output graphics which does not show mouse cursor over itself. I didn't find a corresponding value in MouseAppearance documentation and ended up with

MouseAppearance[Graphics@Circle[{0, 0}], Graphics[{Opacity[0.01], Point[{0, 0}]}]]

Is there a right way of doing this?

faleichik
  • 12,651
  • 8
  • 43
  • 62

2 Answers2

7

You have the right way w.r.t function syntax if that is what you mean. A more concise way would be an empty string:

MouseAppearance[Graphics@Circle[{0, 0}], ""]

If that doesn't work on Windows try

MouseAppearance[Graphics@Circle[{0, 0}], Spacer[0]]

(BTW for fun try this modified example from the docs:

cur = Graphics[{Red, Polygon[{{0, 0}, {1, 0}, {.5, 1}}], 
   Polygon[{{0, 3}, {1, 3}, {.5, 2}}], Dashing[Small], 
   Line[{{.5, 1}, {.5, 2}}]}, ImageSize -> Large];

MouseAppearance[Style["Select this text.", 36], cur, {.5, 1.5}]

Evaluate this at the bottom of a notebook and what you should see is that the graphic goes outside of the notebook.)

Edit

John Fultz has just posted an undocumented mouse appearance "Obscure" that does what you need

MouseAppearance[Graphics@Circle[{0, 0}], "Obscure"]
Mike Honeychurch
  • 37,541
  • 3
  • 85
  • 158
0

You can, somewhat more tersely, just use Graphics@{Null} as the second argument to MouseAppearance.

Glenn Welch
  • 186
  • 6