Comunidad PHPeros
Lenguajes => C / C++ => Mensaje iniciado por: Warlox en 23 de Junio de 2010, 03:35:59 am
-
¡Hola!
Bueno, gracias a una recomendación de TLX, he estado usando la librería gtkmm para crear entornos gráficos con C++. Pero lo malo es que casi no la entiendo :S, lo único que he logrado es crear una ventana vacía, pero no he podido agregarle labels, o campos de texto y cosas así.
El código que tengo para mostrar la ventana es este:
#include <gtkmm.h>
int main (int argc, char *argv[])
{
Gtk::Main kit(argc, argv);
Gtk::Window ventana;
ventana.set_title("Mi primer GUI");
ventana.set_size_request(300, 500);
Gtk::Main::run(ventana);
return 0;
}
Y bien, eso es todo lo que sé hasta ahora :S, crear una ventana con nombre y tamaño, apreciaría mucho una ayuda.
Saludos ^^
-
Mira, aquí hay muchos ejemplos:
http://library.gnome.org/devel/gtkmm-tutorial/unstable/chapter-basics.html
Y si vas dando a siguiente mas y mas y mas jaja
Saludos
-
Sí, lo sé, de esa página es donde estoy aprendiendo, pero solo he logrado crear el primer ejemplo, que muestra una ventana vacía y sin nada. Luego, traté de hacer ese que te muestra una ventana y el mensaje de "Hello World" (http://library.gnome.org/devel/gtkmm-tutorial/unstable/sec-helloworld.html.en), pero por más que copie el código exactamente a como es ahí, el mismo nombre de archivos y todo eso, no funciona :S
Mira, si trato de compilar el main.cc, me sale el siguiente error:
kevin@tribuavatar:~/Escritorio/C++/Proyectos$ g++ main.cc -o main `pkg-config gtkmm-2.4 --cflags --libs`
/tmp/ccSDSCQl.o: In function `main':
main.cc:(.text+0x35): undefined reference to `HelloWorld::HelloWorld()'
main.cc:(.text+0x52): undefined reference to `HelloWorld::~HelloWorld()'
main.cc:(.text+0x64): undefined reference to `HelloWorld::~HelloWorld()'
collect2: ld returned 1 exit status
Por otra parte, si trato de compilar el helloworld.cc, me sale lo siguiente:
kevin@tribuavatar:~/Escritorio/C++/Proyectos$ g++ helloworld.cc -o helloworld `pkg-config gtkmm-2.4 --cflags --libs`
/usr/lib/gcc/i486-linux-gnu/4.4.3/../../../../lib/crt1.o: In function `_start':
(.text+0x18): undefined reference to `main'
collect2: ld returned 1 exit status
Siento si estoy siendo algo molesto, pero ese problema me está matando >:(
Entonces, ¿qué puedo hacer? :S
-
Hola de nuevo, re-posteo este tema para avisarles que ya encontré la solución. Lo que tenía que hacer, era compilar el main.cc y el helloworld.cc al mismo tiempo. ¡Tremenda rebuscada entre páginas me tuve que dar!
Por si a alguien le interesa, la línea para compilar el código desde la terminal, es la siguiente:
g++ main.cc helloworld.cc -o helloworld `pkg-config --cflags --libs gtkmm-2.4`
Pueden cerrar tema ;)
Saludos ^^