Mam pełnoekranową aplikację Tkinter Python, która nie potrzebuje myszy - wersja uproszczona znajduje się poniżej. Otwiera się na pełnym ekranie i uruchamia widżet tekstowy po naciśnięciu klawisza F1
.Jak ukryć lub wyłączyć wskaźnik myszy w aplikacji Tkinter?
import Tkinter as tk
class App():
def __init__(self):
self.root = tk.Tk()
self.root.attributes('-fullscreen', True)
self.root.configure(background='red')
self.root.bind('<F1>', self.opennote)
self.root.bind('<F2>', self.closenote)
self.root.bind('<F3>', self.quit)
l = tk.Label(text="some text here")
l.pack()
self.root.mainloop()
def opennote(self, event):
self.n = tk.Text(self.root, background='blue')
self.n.pack()
def closenote(self, event):
self.n.destroy()
def quit(self, event):
self.root.destroy()
App()
Po uruchomieniu wskaźnik myszy nie jest widoczny. Widać to jednak po zainicjowaniu widgetu Tekst, a następnie pozostaje (zmieniając kształt między ramką tekstową a resztą ekranu).
Znalazłem kilka artykułów o tym, jak ukryć kursor myszy (przy użyciu parametrów cursor=''
), ale nie znalazłem niczego, co zadziałałoby dla wskaźnika myszy na widżetach.
Czy można całkowicie ukryć (lub wyłączyć) wskaźnik myszy w aplikacji Tkinter?
(a question on how to set the mouse position pomógł mi przenieść ten kursor dala wydając self.root.event_generate('<Motion>', warp=True, x=self.root.winfo_screenwidth(), y=self.root.winfo_screenheight())
. To nie jest rozwiązanie, ale przynajmniej wskaźnik nie skakać w czyjejś twarzy od środka ekranu)
Pracowałem dla mnie pod Windows 10 i Ubuntu 16 – ChewToy