Ich habe zwei NSViews übereinander. Ein NSView präsentiert eine Tabelle mit Zeilen. Wenn Sie auf eine Zeile klicken, wird eine andere Ansicht über dieser Ansicht angezeigt.
Jetzt ist das Problem, wenn ich auf einen Bereich auf der zweiten Ansicht klicke, wo es eine Reihe auf dem darunterliegenden NSView gibt, dann wird es angeklickt. Wie kann ich das stoppen?
Danke
Implementieren Sie in Ihrer Ansicht auf oberster Ebene mouseDown:
in dieser Ansicht und rufen Sie nextResponder nicht auf oder tun Sie nichts darin.
Ich habe genau das gleiche Szenario wie das OP und das funktioniert für mich wie vorgesehen. Dank an die Antwort fand ich hier , die mich dazu brachte.
Unterklasse und implementieren Sie acceptsFirstMouse
in der Ansicht und geben YES
zurück. Setzen Sie auch acceptsTouchEvents
auf YES
in dieser Ansicht.
Tags und Links objective-c macos cocoa nsview