Frage

Ich habe eine Liste von Anwendungen, und ich mag eine NSPopupButton, dass zeigt ein Menü von Anwendungsnamen mit ihrem Symbol machen nach links den einzelnen Elementen.

Ich habe in der Lage, die NSPopupButton meine Array von Elementen zu binden, aber es gibt keine verbindlichen Eintrag für ein Bild. Ich dachte, ich eine Zelle in dort setzen könnte und bindet die Zelle als Bild und als Text, aber ich kann keine geeignete Zelle in IB finden.

Gibt es eine saubere und einfache Möglichkeit, dies mit Bindungen zu tun? Muss ich, um eine benutzerdefinierte Zelle zu schreiben?

War es hilfreich?

Lösung

Es gibt keine Möglichkeit, die Bilder sowie die Titel der Menüpunkte zu binden, um ein Lager NSPopUpButton verwenden. Sie haben es zu Unterklasse und eine IBPlugin schreiben die Unterklasse zu belichten. Und natürlich sollten Sie die Zelle als auch handhaben.

Ich habe Bindungen mit NSPopUpButton gefunden Mischen für eine Vielzahl von Gründen eine Tüte verletzt zu werden, einschließlich der Unmöglichkeit, Separatoren und von Out-of-Modell Menüpunkten wie „Default“ oder „Alle“. Betrachten wir mit einer anderen Steuerung, wie beispielsweise eine Quellenliste, oder bevölkern und wieder bevölkern das Popup-Menü manuell.

Andere Tipps

NSMenuItem hat Bild-Bindung (in Abschnitt "Parameter" waaaaaayyyyy nach unten). Deshalb denke ich, dass Sie diesen Wert auf einen Pfad in Ihrem Array von laufenden Anwendungen binden sollten. Sie können ein Symbol für Ihre Anwendung mit Shared NSWorkspace Objekt erhalten.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top