2011-01-22 18 views
11

Estoy acostumbrado a hacer esto en Cocoa-touch, así que supuse que sería bastante simple. Ya lo he intentado:¿Cambia el texto en un NSTextField programáticamente?

field.text = [nsstring stringwithformat:@"%i", number]; 
[field setText:@"%i", number]; 

y setString, todo en vano.

Ayuda ¡Por favor!

+2

Usted sería mucho mejor haciendo referencia a la API de su primer recurso (incluyendo superclases de la que usted está investigando). En especial, no debe ignorar los errores del compilador y ejecutar los mensajes de registro (como los que estaba seguro que recibió con el código que proporcionó), ya que generalmente le dicen exactamente qué es lo que está mal. Este enfoque lo convertirá en un programador mucho más efectivo. –

Respuesta

23

Esto funcionará:

[field setStringValue:[NSString stringWithFormat:@"%i",number]]; 

Si no se hace nada, probablemente significa field no está configurado para señalar el campo (por ejemplo, al hacer una conexión en Interface Builder).

+0

Gracias, no sé lo que estaba pensando ... ¡Es tan obvio! –

+0

En Swift esto sería 'field.stringValue =" "' –

3

Debería poder usar el método setStringValue: NSTextField hereda de NSControl.

La firma completa es:

- (void)setStringValue:(NSString *)aString 
Cuestiones relacionadas