2009-09-06 6 views
4

J'ai une fenêtre HUD qui contient des étiquettes, et je veux que cela s'affiche lorsque l'utilisateur appuie sur un bouton. Je sais que c'est simple, mais je ne peux pas l'afficher à nouveau si je ne redémarre pas mon programme.Masquer et afficher HUD Window - Cocoa?

Sincèrement,

Kevin

+0

Je pense que vous devriez montrer le code que vous utilisez pour le montrer, et le code (le cas échéant) que vous utilisez pour le cacher. –

Répondre

12

Pour masquer hudWindow:

- (void)applicationDidFinishLaunching:(NSNotification *)aNotification { 
    [hudWindow orderOut:nil]; // to hide it 
} 

ensuite sur le bouton presse:

- (IBAction)showWindow:(id)sender { 
    [hudWindow makeKeyAndOrderFront:nil]; // to show it 
} 
+3

Vous n'avez pas besoin de masquer la fenêtre par programmation au lancement, il vous suffit de décocher la case "Visible au lancement" dans Interface Builder. –

+0

pour cela devrais-je faire une sortie? et le devrait être le type NSPanel? – lab12

8

Dans IB, allez à l'inspecteur des attributs de la fenêtre et assurez-vous que "Released when closed" n'est pas coché.

+0

J'avais besoin de ça pour réparer ma fenêtre HUD, si je fermais la fenêtre et que je la montrais à nouveau, j'ai une fenêtre où aucun clic ne serait enregistré. Quand j'ai décoché "Relâché quand fermé" ma fenêtre était à nouveau interactive et revenue à la normale, alors merci! –

Questions connexes