Je fais une application de test en plein écran en utilisant this guide. Cependant, je rencontre un problème lorsque je veux obtenir des informations clés.Plein écran Actions vers le bas
Pour une raison quelconque, il semble que lorsque vous définissez le NSPanel pour prendre l'écran, vous perdez également la possibilité pour qu'il obtienne les événements de clé. J'ai essayé de faire un déclencheur de bouton lorsque l'utilisateur tape s
, ce qui fonctionne bien dans un panneau classique, mais ne semble pas fonctionner lorsque ce changement est appliqué.
Harry Jordan: J'utilise NSPanel parce que ce qu'il a dit de faire dans un tutoriel sur les applications en plein écran. :) Est-il préférable d'utiliser un NSWindow dans ce cas? Je ne sais pas si mon application utilise une interface utilisateur standard, mais je ne le crois pas. Donc, dans ce cas, devrais-je simplement sous-classer -canBecomeKeyWindow et faire ces deux méthodes -acceptsFirstResponder pour retourner TRUE? – PF1
La raison principale pour utiliser un NSPanel, sur une fenêtre normale est généralement pour l'apparence (barre de titre mince), et la façon dont il interagit avec les événements et autres fenêtres (c'est-à-dire flottant). En tant que paramètre par défaut, un panneau ne devient pas la fenêtre de la clé d'application à moins d'être spécifiquement demandé par une sous-vue. Si vous avez besoin d'utiliser NSPanel, vous pouvez résoudre ce problème en définissant l'attribut getsKeyOnlyIfNeeded de panneaux sur FALSE. Mais la réponse courte, est que je vous recommande d'utiliser NSWindow pour votre exemple. –
Harry: J'envisage fortement d'utiliser un NSWindow après avoir lu votre réponse, mais je ne sais pas si cela fonctionnera dans cette situation. En tout cas, merci pour votre aide - j'ai maintenant le problème résolu. – PF1