Tras el tutorial que nos enseñaba lo básico (instancias, outlets, acciones, una pequeña y simple aplicación) vamos a pasar a algo ligeramente más avanzado. Tocaremos las bases de la programación en C siempre que sea necesario, sin miedo a avanzar y saltando todo lo que se haya visto en anteriores ediciones. Además, aprenderemos a gestionar objetos de la clase NSColor y avanzaremos, en general, por la senda de la programación.
Lo primero de todo es decidir que vamos a hacer. En nuestro caso, vamos a hacer un pequeño juego: el sistema genera un color al azar, y nosotros tenemos que reproducirlo añadiendo las proporciones correctas de rojo, verde y azul.
Evidentemente los colores se harán con, por ejemplo, 3 partes de rojo, 2 de verde y 1 de azul. No es cuestión de tener al usuario haciendo clicks todo el día para encontrar el color.

Cread una interfaz como la que vemos aquí. No pasa nada si no es exactamente igual, por supuesto. Los objetos de colores son NSColorWell, con la opción Disabled marcada y la opción Bordered desmarcada. Los objetos de flechitas, son NSStepper, con Value Wraps y Autorepeats desmarcados. No os preocupéis por los valores mínimos y máximos: los definiremos con código más tarde. El botón es un simple objeto NSButton y el texto sobre el NSColorWell grande de la derecha no es más que un NSTextField.
No me voy a andar por las ramas, por que ya sabéis cómo se hace, tanto en Tiger como en Leopard, gracias a los tutoriales I-III, así que, cread una subclase de NSObject llamada AppController, instanciadla y añadid los siguientes outlets a esta clase:
- rojo, enlazado al NSColorWell de color rojo
- verde, enlazado al NSColorWell de color verde
- azul, enlazado al NSColorWell de color azul
- frojo, enlazado al NSStepper correspondiente al color rojo
- fverde, enlazado al NSStepper correspondiente al color verde
- fazul, enlazado al NSStepper correspondiente al color azul
- colorobj, enlazado al NSColorWell grande de la derecha
- tucolor, enlazado al NSColorWell grande de la izquierda
- hasganado, enlazado al NSTextField que está encima del NSColorWell grande de la derecha
Así como dos acciones:
- cambiavalor, al cuál enlazan los tres objetos NSStepper
- nuevojuego, al cuál enlaza el NSButton
Y, por último, creáis los archivos Appcontroller.h y Appcontroller.m.
Mañana escribiremos un poco de código, aunque la mayor parte del post será teórica y no práctica. Depende del humor con el que me levante mañana.
Cualquier problema, duda o insulto políticamente correcto, en los comentarios.
Etiquetas: cocoa, Interface Builder, objective-c, programación, xcode


Para hacer un trackback a este artículo, usa
Para seguir los comentarios de este artículo por RSS, usa 

2 comentarios
Me gusta mucho que pongáis tutos de estos.
Ya tengo ganas de que salga uno par iPhone/ iPod touch, aunque se que primero deberíamos asentar un poco mejor la base.
Lo cierto es que tengo ganas de probar el SDK del iPhone, pero estoy en Leopard, así que a corto plazo (procuraré que sea lo mas corto posible) va a ser dificil…