Toolbar & setEnabled
chrixtian
Membre
Bonjour tout le monde
J'ai une interrogation concernant la méthode setEnabled de la classe NSToolbarItem. J'ai un item que je veux rendre inactif. Je fais un [monItem setEnabled:NO] et ......... rien
L'item est toujours actif et clickable. Existe-t-il une ruse de sioux pour que cela fonctionne ? Ou bien, seul un appel à setAction:nil sur un toolbaritem peut le désactiver ?
Merci par avance de vos lumières
J'ai une interrogation concernant la méthode setEnabled de la classe NSToolbarItem. J'ai un item que je veux rendre inactif. Je fais un [monItem setEnabled:NO] et ......... rien
L'item est toujours actif et clickable. Existe-t-il une ruse de sioux pour que cela fonctionne ? Ou bien, seul un appel à setAction:nil sur un toolbaritem peut le désactiver ?
Merci par avance de vos lumières
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
[size=12pt]setEnabled:[/size]
Sets the receiver's enabled flag.
- (void)setEnabled:(BOOL)enabled
Parameters
enabled
YES to enable the receiver, otherwise NO.
Discussion
For a custom view item, this method calls setEnabled: on the view if it responds.
J'ai donc essayé une Toolbar avec une custom view et un NSButton
Le [item setEnabled:NO] est actif sur le ToolbarItem-bouton, mais pas sur les Toolbar-custom-view.
Ainsi, en déclarant ça dans notre header et en n'oubliant pas de faire un setDelegate:self pour la toolbar, on utilisera le code comme ci-dessous :
Tu l'auras compris, TOOLBAR_NEXT est en fait un simple #define qui est en fait le nom donné à un de mes toolbar items grâce à initWithItemIdentifier:
Si je devais te filer un gros pavé pour montrer l'implémentation d'une toolbar avec customization et avec enabled ou non ça donnerait ça :
AppController.h :
AppController.m :
Avec IB 3, c'est beaucoup plus simple : voir ici
Je sais mais on sait jamais il n'indique pas si il est sous Léopard ou pas !
De toute façon l'essentiel c'est la méthode delegate ^^