Ich habe zwei Widgets, die folgendermaßen angeordnet sind:
Code: Alles auswählen
-----------------------------------------------
|                A                             |
|                                              |
|                                              |
|          ------------------------------      |
|          |                            |      |
|          |         B                  |      |
|          |                            |      |
|          |                            |      |
|          ------------------------------      |
|                                              |
-----------------------------------------------
B ist normalerweise unsichtbar. setVisible(False)
Wenn der Mauszeiger A betritt (enterEvent), wird B angezeigt.
Wenn der Mauszeiger A verlässt (leaveEvent), wird B wieder versteckt.
Das Problem:
Wenn der Mauszeiger B betritt, erhält A ein leaveEvent und B wird versteckt. Dadurch erhält A wieder ein enterEvent und B wird wieder angezeigt. Bewegt man den Mauszeiger also über B hinweg, fängt B an zu flackern, da es ständig aus- und eingeblendet wird.
Eigentlich soll B nur versteckt werden, wenn der Mauszeiger die gesamte Fläche von A und B verlässt.
Wenn der Mauszeiger über B steht, soll es trotzdem angezeigt bleiben. Nur wenn der Mauszeiger die Fläche komplett verlässt, man also die Maus "nach außen" von A wegbewegt oder z.B. ein anderes Fenster in den Vordergrund holt, soll B versteckt werden.
Wie kann ich das bewerkstelligen?


 Dadurch hast du das Problem, dass du dein aufpoppendes Widget immer mitziehen musst, falls dein Widget bewegt wird.
 Dadurch hast du das Problem, dass du dein aufpoppendes Widget immer mitziehen musst, falls dein Widget bewegt wird.