Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/07/2012, 11:47
Avatar de Ronin46
Ronin46
 
Fecha de Ingreso: junio-2009
Mensajes: 398
Antigüedad: 15 años, 6 meses
Puntos: 8
Respuesta: Mejor forma de crear campos de un formulario

Cita:
La clase formulario no debe estar encargada de darle los valores a los input que contiene. Talvez si deba mantener el estado y llamar alguna funcion del mismo campo para setear el valor, pero no encargarse el mismo de darselo.
Creo que me he perdido.

¿Según tu comentario esto estaría mal?:
Código PHP:
class cForm
{
    private 
$Campos = array();

    public function 
addCampo (cCampo $Campo)
    {
        
$this->Campos[$Campo->GetNombre()] = $Campo;
    }

    public function 
SetTitleCampo ($NombreCampo$Title)
    {
        
$this->Campos[$NombreCampo]->SetTitle $Title;
    }
}

class 
cMiForm extends cForm
{
    public function 
__construct ()
    {
        
$this->addCampo(new cTextarea('MiTextarea'));
        
$this->SetTitleCampo ('MiTextarea''Tooltip explicativo de MiTextarea');
    }
}

$MiForm = new cMiForm(); 
¿Según tu comentario esto estaría bien?:
Código PHP:
class cForm
{
    private 
$Campos = array();

    public function 
addCampo (cCampo $Campo)
    {
        
$this->Campos[$Campo->GetNombre()] = $Campo;
    }
}

class 
cMiForm extends cForm
{
    public function 
__construct ()
    {
        
$Textarea = new cTextarea('MiTextarea');
        
$Textarea->SetTitle('Tooltip explicativo de MiTextarea');
        
$this->addCampo($Textarea);
    }
}

$MiForm = new cMiForm(); 
En caso de que el segundo código sea el correcto, ¿cómo podría cambiar el title del campo una vez que he hecho el $MiForm = new cMiForm();? Tendría que tener un método para recoger el campo, cambiarle el title y volver a hacer un addCampo?

Gracias!
__________________
http://www.controldegastos.com, acepto sugerencias para el sitio.
Repetir conmingo: "tengo que dedicar más tiempo a gozar de placer"