Co właściwie robi funkcja „Ukryj wskaźnik podczas pisania”?

18

Jestem ciekawy tej funkcji, która była częścią systemu Windows od tak dawna, jak pamiętam. Może nawet Windows 95 lub 98.

wprowadź opis zdjęcia tutaj

Dla mnie oznacza to dokładnie to, co mówi. Kursor myszy powinien stać się niewidoczny podczas pisania. OS / X ma tę funkcję i faktycznie działa. Jednak z tego, co mogę powiedzieć:

  • Jest całkowicie zepsuty w systemie Windows i był na zawsze.
  • Aplikacja musi wdrożyć tę funkcję lub zadzwonić do jakiegoś interfejsu API lub systemu operacyjnego, aby ją poprawnie wdrożyć.

Jak dotąd znalazłem:

  • Notatnik, jak pamiętam, działa i szanuje to ustawienie. Nie mogę teraz testować, ponieważ mam Notepad2, który zastępuje Notatnik. Notepad2 nie przestrzega tego ustawienia.
  • Visual Studio nie.
  • IE nie.
  • Microsoft Word tak, ale faktycznie ukrywa kursor myszy niezależnie od tego, czy to ustawienie jest włączone, czy nie. Być może zespół Office zaimplementował tę funkcję wewnętrznie.
  • Niektóre jednostki SKU systemu Windows wydają się zachowywać inaczej. Na przykład mam jednego przyjaciela, który mówi, że ta funkcja działa dla IE, ale on jest na Surface.

Czy ktoś znalazł aplikację, która faktycznie ukryje kursor myszy tylko wtedy, gdy to ustawienie jest włączone? Jeśli taka aplikacja nie istnieje, czy to pole wyboru faktycznie coś robi? Z punktu widzenia Windows API, jakie haki na system operacyjny są dostępne, z których programiści powinni korzystać, aby skorzystać z tej funkcji?

Mike Christensen
źródło
Na moim komputerze z Win7 działa w Notatniku i Word 2010. NIE działa w Chrome i Notepad ++. Naprawdę chciałbym, żeby to działało w tych programach.
gus
1
@gus - Czy mówisz, że te aplikacje szanują to ustawienie? Czy te aplikacje ukrywają kursor myszy podczas pisania, niezależnie od ustawienia?
Mike Christensen,
2
Początkowo myślałem, że Notatnik i Word2010 przestrzegają ustawienia Ukryj w Opcjach wskaźnika. Po przeczytaniu twoich komentarzy przetestowałem zachowanie przy wyłączonym ustawieniu Ukryj i potwierdziłem, że Notatnik i Word2010 ukrywają wskaźnik myszy podczas pisania NIEZALEŻNIE od ustawienia Ukryj w Opcjach wskaźnika. Tak więc ta funkcja systemu Windows wydaje się całkowicie zepsuta lub nawet nie zakodowana w głównych programach MS.
gus
1
@ gus - I było od ... jak ... lata 90. To przezabawne. Powinny przynajmniej usunąć tę funkcję, jeśli nigdy nie została zaimplementowana. To nadal istnieje w systemie Windows 10, nawet!
Mike Christensen,
Być może wnioski nie szanuję go, ale to jeszcze nie w celach starszych, tylko w przypadku coś robi .
Bort

Odpowiedzi:

12

Ukryj wskaźnik podczas pisania funkcja nie zrobić pracę ukrywanie kursora. Wystarczy ustawić wartość parametru systemowego Mouse Vanish . Jest to wartość, do której można uzyskać zapytanie za pomocą funkcji API WIN32 SystemParametersInfo () przekazującej stałą SPI_GETMOUSEVANISH.

Aplikacje powinny zapytać o ten parametr, a jeśli parametr jest ustawiony na PRAWDA, ukryj wskaźnik myszy podczas pisania.

Kilka aplikacji honoruje to ustawienie, na przykład edytor w środowisku Eclipse IDE.

Większość aplikacji całkowicie go ignoruje. Edytor tekstu używany w witrynach Stack Exchange nie ukrywa kursora podczas pisania.

Jak na ironię kilka aplikacji Microsoft ignoruje to ustawienie i mimo to ukrywa kursor. Na przykład Word 2010 i Notatnik w systemie Windows 10.

bradfordrg
źródło
System operacyjny reprezentuje więc repozytorium danych, przechowując pożądaną wartość opcji, ale system operacyjny nie inicjuje funkcji sprawdzania. Nic dziwnego, że nie jest to postrzegane jako szeroko obsługiwane. Westchnienie. Zastanawiam się, czy obsługuje to więcej części systemu Microsoft Windows, np. Podczas zapisywania pliku lub podczas wpisywania ścieżki w górnej części okna.
TOOGAM,
1
Wow, dzięki za informacje techniczne! Poszedłem tak daleko, że poprosiłem rzeczywistych programistów z zespołu Windows w Microsoft i żaden z nich nie znał odpowiedzi! Miałem nawet jeden plik błędu w systemie Windows 10, ale został rozwiązany jako „Won't Fix”, ponieważ działał tak samo w systemie Windows 8. Myślę, że powinni usunąć to ustawienie lub sprawić, aby działało jak OS / X (gdzie to działa ukrywa się niezależnie od zastosowania).
Mike Christensen