NSMenuItem nicht aktiviert?

8

Ich habe ein NSMenuItem namens history, das sich in einem NSMenu namens menu befindet. Wenn mein Programm startet, hat der Verlauf kein Untermenü, daher ist es deaktiviert. Dann brauche ich irgendwann ein Untermenü für Geschichte, also erstelle ich es, mache es zu einem Untermenü der Geschichte. Ein Pfeil erscheint neben dem Verlauf, der mir sagt, dass das Untermenü dort ist. Aber Geschichte ist immer noch deaktiviert. Ich habe SetEnabled versucht, funktioniert aber nicht. Bitte helfen Sie. Hier mein Code:

Dies ist, wenn ich mein Menü und Geschichte erstellen, wie Sie ein NSMenuItem im Menü sehen können.

%Vor%

An diesem Punkt ist die Historie deaktiviert (ausgegraut). Dann irgendwo im Programm muss ich ein Untermenü für den Verlauf haben:

%Vor%

Ich sehe jetzt einen Pfeil neben der Geschichte, aber er ist immer noch ausgegraut.

Bitte helfen Sie, ich habe versucht, das für die letzten 2 Stunden herauszufinden. Danke.

    
user635064 26.02.2011, 00:41
quelle

2 Antworten

8

Sie setzen das Ziel, haben aber eine Null-Aktion. Versuchen Sie nicht, das Ziel festzulegen. Dies kann dazu führen, dass es immer aktiviert bleibt. In diesem Fall müssen Sie den Menüeintrag möglicherweise manuell aktivieren oder deaktivieren.

Hier ist die Dokumentation zu den Menüoptionen aktiviert werden.

    
Jon Steinmetz 26.02.2011 01:44
quelle
2

Ich musste die Methode validateMenuItem auf return true :

überschreiben %Vor%

Es hat die Validierungsmethode nicht verwendet, bis ich das Ziel auf self gesetzt habe, wie du es mit

getan hast %Vor%     
Adam Johns 12.05.2016 19:19
quelle