[C con Clase] textbox de windows forms
Steven Davidson
srd4121 en njit.edu
Sab Mar 12 20:49:31 CET 2011
Hola Álvaro,
On 3/12/2011 11:09 AM, alvaro martin garcia wrote:
> Tengo abierto un proyecto de visual studio 2010 de windows forms para
> visual c++
>
> En una clase tengo esto:
>
> #ifndef __SALIDAFORMS_H
> #define __SALIDAFORMS_H
> #include "Salida.h"
>
> class SalidaForms: public CSalida {
> public:
> SalidaForms(System::Windows::Forms::TextBox ^ tb) {_tb = tb;}
> virtual ~SalidaForms(){}
> virtual void InitPrueba(const std::string &desc) {}
> virtual void Muestra(int tam, float tiempo);
> virtual void FinPrueba(){};
>
> protected:
> System::Windows::Forms::TextBox ^ _tb;
> };
>
> #endif
>
> Y me sale un error que me dice:
> "Error 1 error C3265: no puede declarar un elemento '_tb'
> administrado en un elemento 'SalidaForms' sin administrar
> d:\src\CSalidaForms.h 14"
>
Según la documentación este error tiene que ver con el uso de objetos
administrados (o gestionados) dentro de clases no administradas. Una
solución se basa en definir tu clase como "administrada", pero si no te
interesa, entonces puedes usar la clase-plantilla 'gcroot'. Esto es,
SalidaForms( gcroot<System::Windows::Forms::TextBox ^> tb) {_tb = tb;}
...
gcroot<System::Windows::Forms::TextBox ^> _tb;
Espero que esto te ayude.
Steven
Más información sobre la lista de distribución Cconclase