Comptage de lettres

matva

Membre enregistré
5 Février 2006
5
0
Bonjour,

Je débute avec le livre Cocoa Programming for Mac OS X (2cd édition), excellent livre !
Je réalise l'ex. p101 :
1- On saisit un mot dans un champ texte (textField)
2- On appuie sur le bouton "Compter les lettres du mot"
3- On affiche le nombre de lettres du mot dans un autre textfield (textFieldResult)

L'étape 3 ne fonctionne pas. Compil ok mais à l'exécution :
Ex: je rentre le mot coucou, est affiché : "Le mot coucou a"
Je ressaie avec le mot "cou" -> "Le mot cou a 3"

Merci pour votre aide !

#import "AppController.h"

@implementation AppController

- (IBAction)compterLettres: (id)sender
{

NSString *uneChaine ;
int nombreLettres;

uneChaine = [textField stringValue];
nombreLettres = [uneChaine length];

NSString *chaineFinale;
chaineFinale = [NSString stringWithFormat:@"Le mot %@ a %i lettres", uneChaine, nombreLettres];

[textFieldResult setStringValue:chaineFinale];
}

@end
 
J'ai fais comme tu m'as dis ntx : rien ne change, cela me semblait effectivement correct.
Alors j'ai donc fait un debug avec un breakpoint sur la ligne :
chaineFinale = [NSString stringWithFormat:@"Le mot %@ a %u lettres", uneChaine, nombreLettres];

chaineFinale m'affiche bien la bonne chaine de caractères !

L'erreur : Mon champ textField dans IB était tout simplement trop court !!

Merci ntx, quelque part tu m'as débloqué le pb !