2017-06-27 4 views
1

J'essaie d'écrire une application qui devrait continuer à fonctionner après avoir cliqué sur un bouton, donc je veux le minimiser. J'ai l'application fenêtre principale theWindow connecté à l'espace réservéDans une application AppleScript XScript mac osx (AppleScriptObjC), quelle est la commande permettant de réduire la fenêtre principale de l'application?

property theWindow : missing value 

J'ai essayé:

theWindow's performMiniaturize() 
theWindow's miniaturize() 

Mais je continue à faire passer le message:

[NSView performMiniaturize]: unrecognized selector sent to instance 0x608000120280 (error -10000)

Répondre

0

-[NSWindow miniaturize:]

theWindow's miniaturize: me 

Cela dit, pourquoi ne pas tout simplement fermer la fenêtre et l'ouvrir à nouveau plus tard si/au besoin? (Assurez-vous que votre application n'est pas configurée pour se fermer automatiquement lorsque la fenêtre se ferme, bien sûr.)

+0

Cela a fait l'affaire, et je vous remercie pour la suggestion d'optimiser l'application Awesome. – Belerofonte

0

Miniatures() est correct dans ASOC . Mais vous l'appelez sur une vue (NSView), pas une fenêtre - c'est ce que l'erreur dit.

Pour obtenir la fenêtre, vous pouvez soit monter la hirarchy vue comme celui-ci

set window to view's superview() 

où vue variable est ce que vous avez appelé la fenêtre par erreur. Mais notez: ceci ne fonctionnera que si le niveau suivant est la fenêtre et pas un autre NSView.

Ou vous pouvez obtenir la fenêtre principale comme ça:

if exists (1st window whose value of attribute "AXMain" is true) then tell (1st window whose value of attribute "AXMain" is true) to miniaturize() 
+0

La commande suggérée provoque une erreur de compilation: erreur : "" attendu, mais trouvé "" ". (-2741) – Belerofonte