Zeige NSPopover von der NSToolbarItem-Schaltfläche

8

Ich möchte eine NSPopover von einer NSToolbarItem Schaltfläche in meiner Symbolleiste zeigen.
(d. h. unter dem Knopf positioniert).

Idealerweise möchte ich das NSView der Schaltfläche an das Popover übergeben, um es zu positionieren.
Meine Frage ist, wie bekomme ich die NSView der NSToolbarItem ?

[toolbarbutton view] gibt immer nil zurück.

    
Stuart Tevendale 15.11.2011, 20:33
quelle

4 Antworten

5

Die Antwort scheint im Video für die 2011 WWDC-Sitzung 113, "Full Screen und Aqua Changes" zu sein. Im Grunde legen Sie einen NSButton in das NSToolbaritem und verwenden Sie die Ansicht davon.

Ein Blogeintrag ist hier: Ссылка , und ein Beispielprojekt ist auf github bei Ссылка

Alle im Sprite von Ссылка !

    
Stuart Tevendale 19.11.2011, 19:20
quelle
2

Sie können die Aktion direkt aus dem NSButton senden, das in NSToolbarItem eingeschlossen ist (was Sie normalerweise tun sollten, segmentierte Steuerelemente, wobei jedes Segment sein eigenes Ziel / Aktion hat), und das wird tun Trick.

    
Tony 24.02.2012 16:57
quelle
2

Anstatt die Sicht vom IBAction-Absender zu erhalten, verbinden Sie ein IBOutlet direkt mit dem Symbolleistenelement und verwenden Sie dieses, um die relative Sicht zu erhalten:

In Ihrer Header-Datei:

%Vor%

In Ihrer Implementierungsdatei, um das Popover anzuzeigen:

%Vor%

Dies funktioniert auch, um Popups aus Menüoptionen innerhalb eines Werkzeugleistenelements anzuzeigen.

    
Elmer Cat 21.01.2013 06:41
quelle
0

Während ich erreicht habe, dass der Popover mit dem von Stuart Tevendale erwähnten Ansatz gezeigt wurde, stieß ich auf Probleme, als ich versuchte, NSToolbarItems mit NSToolbarDelegate zu validieren (aktivieren / deaktivieren):

%Vor%

Ich würde daher empfehlen, kein Popover von NSToolbarItem anzuzeigen. Eine Alternative könnte ein Seitenblatt sein: Wie man ein NSPanel als zeigt ein Blatt

    
Besi 27.03.2014 15:17
quelle

Tags und Links