[eside-ghost] Dudilla de C++ (+GTKmm)
Jon Ander Ortiz
jonbaine en gmail.com
Jue Oct 25 10:10:03 CEST 2007
Buenas:
De buenas a primeras, tu clase que hereda de Gtk::Window no es padre de
MiClase, sino que la contiene.
Si pones hereda, supongo que estas utilizando herencia, cosa que no es así,
y puede llevar a equivocaciones.
Creo que tu problema esta en el siguiente punto:
Cuando haces lo siguiente :
MiClase miclase;
En la clase contenedora estas llamando al constructor sin argumentos de
MiClase, y te falla miserablemente.
Hay que tener en cuenta que cuando creas una instancia aunque séa sin hacer
new, tb se llama al constuctor, por lo que no le estas pasando ningún
argumento en ese constuctor.
Por lo que lo ideal:
MiClase * miclase;
//En el constructor de tu ventana:
this->miclase = new MiClase(this);
Y eso, no olvidarse de destruir luego XD.
Un saludete!!
Jonan
El día 25/10/07, Iker Perez de Albeniz - Txupete - <txupete en gmail.com>
escribió:
>
> Epa!
>
> Aunqye estoy con gtkmm es una custion de C++.. acostumbrado a otros
> lenguajes de programacion.. si desde una clase hija queria llamar a
> funciones de la clase padre lo que hacia era pasarle la clase padre en
> el constructor de la hija..
>
> Pues bien.. ahora tengo una ventana que es una clase que ereda de una
> clase de gtk Gtk::Window con funciones propias y luego tengo otra
> clase que es un elemento creado por mi (MiClase) que es un
> Gtk::EventBox que dentro tiene un monton de elementos mas
> (Gtk::Buttons, Gtk::Images..)
>
> por tanto dentro del Gtk::Window declaro un nuevo elemento de tipo:
>
> MiClase miclase;
>
> y lo coloco dentro de la ventana y todo.. muy bien.. la cosa es que
> ese elemento "miclase" tiene botones que cuando pincho en ellos quiero
> que llamen a funciones propias de la ventana.. que es la clase padre..
>
> he intentado hacer como en otres lenguajes.. pasarle la clase padre en
> el constructor pero me casca.. igual es porque al heredar de otra
> clase no puedo tocar el constructor o algo asi..?
>
> gracias de antemano!
> _______________________________________________
> eside-ghost mailing list
> eside-ghost en deusto.es
> https://listas.deusto.es/mailman/listinfo/eside-ghost
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: https://listas.deusto.es/mailman/private/eside-ghost/attachments/20071025/e4a84093/attachment.htm
Más información sobre la lista de distribución eside-ghost