Texte dans NSFormcell
tablier
Membre
En utilisant SDK 10.2.8, je compile la méthode ci-dessous qui me donne le warning:
'NSFormCell' may not respond to '-setPlaceholderAttributedString:'
- (void)Place_Texte:(NSForm *)LaForme Index:(int)Indx texte:(NSString *)Montexte
{
NSFormCell *LaCellule ;
LaCellule = [LaForme cellAtIndex:Indx] ; // pointeur de NSFormcell
[LaCellule setPlaceholderAttributedString:Montexte] ; // mise du texte en place
}
J'ai trouvé que cela ne doit marcher qu'avec SDK 10.4! Comment fait-on si l'on veut que cela marche sous 10.2 et suivant? J'ai bien trouvé NSTextFieldCell, mais je n'arrive pas à avoir un pointeur là dessus!
'NSFormCell' may not respond to '-setPlaceholderAttributedString:'
- (void)Place_Texte:(NSForm *)LaForme Index:(int)Indx texte:(NSString *)Montexte
{
NSFormCell *LaCellule ;
LaCellule = [LaForme cellAtIndex:Indx] ; // pointeur de NSFormcell
[LaCellule setPlaceholderAttributedString:Montexte] ; // mise du texte en place
}
J'ai trouvé que cela ne doit marcher qu'avec SDK 10.4! Comment fait-on si l'on veut que cela marche sous 10.2 et suivant? J'ai bien trouvé NSTextFieldCell, mais je n'arrive pas à avoir un pointeur là dessus!
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Ces placeHolder Strings sont des chaà®nes qui apparaissent en grisé dans la cellule d'un contrôle texte quand cette dernière est vide et n'a pas le focus. L'exemple en est le champ de recherche dans Safari qui affiche le nom du moteur de recherche ("Google").
Puisque cette méthode est d'implémentation récente, tu ne peux pas l'utiliser dans des systèmes antérieure (à moins de faire une sous-classe de NSFormCell, et de gérer toi même l'affichage de la placeHolder Strings). Pour moi, le mieux est de d'ignorer : ceux qui sont en 10.3 ne verront rien, les autres en 10.4 bénéficieront de cette amélioration.
Tu peux toujours tester l'existance de cette méthode pour avoir du code compatible avec plusieurs systèmes :
.