Ejemplo simple
Para iniciar nuestra introducción a gtkmm, vamos a empezar con el programa más simple posible. Este programa va a crear una ventana vacía de 200 x 200 píxeles.
File: base.cc (For use with gtkmm 4)
#include <gtkmm.h> class MyWindow : public Gtk::Window { public: MyWindow(); }; MyWindow::MyWindow() { set_title("Basic application"); set_default_size(200, 200); } int main(int argc, char* argv[]) { auto app = Gtk::Application::create("org.gtkmm.examples.base"); return app->make_window_and_run<MyWindow>(argc, argv); }
Ahora se explicará cada línea del ejemplo
#include <gtkmm.h>
Todos los programas gtkmm deben incluir ciertas cabeceras gtkmm: gtkmm.h incluye el kit completo de gtkmm. Esto no suele ser una buena idea, ya que incluye casi un megabyte de cabeceras, pero para programas sencillos, basta.
The next statement:
auto app = Gtk::Application::create("org.gtkmm.examples.base");
Las dos siguientes líneas de código crean una ventana y establecen su tamaño (inicial) predeterminado:
Gtk::Window window; window.set_default_size(200, 200);
The last line shows the window and enters the gtkmm main processing loop, which will finish when the window is closed. Your main() function will then return with an appropriate success or error code. The argc and argv arguments, passed to your application on the command line, can be checked when run() is called, but this simple application does not use those arguments.
return app->run(window, argc, argv);
After putting the source code in simple.cc you can compile the above program with gcc using:
g++ simple.cc -o simple `pkg-config gtkmm-4.0 --cflags --libs`