Comment choisir une fenêtre parmi plusieurs dans un nib ?

VeillardVeillard Membre
03:33 modifié dans API AppKit #1
Salut à  tous !

Je cherche à  ouvrir une fenêtre avec un AppDelegate.m que j'ai créé. J'ai mis ceci :
- (IBAction)showMyWindow:(id)sender<br />{<br />&nbsp; &nbsp; if (!preferenceController)<br />&nbsp; &nbsp; &nbsp; &nbsp; preferenceController = [[PreferenceController alloc] initWithWindowNibName:@&quot;Preferences&quot;];<br /><br />&nbsp; &nbsp; [preferenceController showWindow: self];<br />}<br />


Le nib Preference contient la fenêtre MyWindow que je cherche à  ouvrir et la fenêtre de préférences principale. Pour appeler la fenêtre de préférences principale, j'ai ceci :
- (IBAction)showPreferencePanel:(id)sender<br />{<br />&nbsp; &nbsp; if (!preferenceController)<br />&nbsp; &nbsp; &nbsp; &nbsp; preferenceController = [[PreferenceController alloc] initWithWindowNibName:@&quot;Preferences&quot;];<br /><br />&nbsp; &nbsp; [preferenceController showWindow:self];<br />}<br />

Oui, je sais, c'est le même code. Quand j'appelle l'un ou l'autre, j'ai ma fenêtre principale qui apparaà®t, normal  :P.

Comment fait-on pour sélectionner telle ou telle fenêtre dans un même nib ?
Je suppose qu'il faut tripoter qq chose comme :
[preferenceController showWindow:self];

mais que mettre ? :crackboom:- :crackboom:- :crackboom:-

Réponses

  • BaardeBaarde Membre
    03:33 modifié #2
    Je crois que, d'après ce que dis la doc, il ne peut y avoir qu'une seule fenêtre par WindowController. Le plus simple serait de créer deux WindowController à  partir de deux nib.
  • VeillardVeillard Membre
    03:33 modifié #3
    Merci, je sais ce qu'il me reste à  faire  :-\\
  • 03:33 modifié #4
    Tu peux avoir plusieurs fenêtre par nib, pas de problème. Il suffit de mettre un outlet pour chacune d'elle, et tu l'ouvres en faisant:
    [window1 makeKeyAndOrderFront:nil];
    


    Si le nib qui contient les fenêtres n'est pas chargé, c'est la méthode que d'habitude.
  • VeillardVeillard Membre
    03:33 modifié #5
    Merci, je vais essayer  :)
Connectez-vous ou Inscrivez-vous pour répondre.