Gtkmm

gtkmm (sebelumnya dikenal sebagai gtk-- atau gtk minus minus) adalah antarmuka resmi C++ untuk GTK. gtkmm merupakan perangkat lunak bebas yang didistribusikan dibawah LGPL.

gtkmm memperbolehkan pembuatan antarmuka pengguna di dalam kode atau dengan Glade, dengan menggunakan kelas Gtk::Builder. Fitur lainnya mencakup typesafe callbacks, kumpulan elemen kontrol grafis, and ekstensibilitas widget melalui inheritance.

 Contoh 
//HelloWorldWindow.h

#ifndef HELLOWORLDWINDOW_H
#define HELLOWORLDWINDOW_H

#include <gtkmm/window.h>
#include <gtkmm/button.h>

// Derive a new window widget from an existing one.
// This window will only contain a button labelled "Hello World"
class HelloWorldWindow : public Gtk::Window
{
  public:
    HelloWorldWindow();

  protected:
    Gtk::Button hello_world;
};

#endif

//HelloWorldWindow.cc

#include <iostream>
#include "HelloWorldWindow.h"

HelloWorldWindow::HelloWorldWindow() : hello_world("Hello World")
{
    // Set the title of the window.
    set_title("Hello World");

    // Add the member button to the window,
    add(hello_world);

    // Handle the 'click' event.
    hello_world.signal_clicked().connect([] () {
          std::cout << "Hello world" << std::endl;
    });
    // Display all the child widgets of the window.
    show_all_children();
}

//main.cc

#include <gtkmm/main.h>
#include "HelloWorldWindow.h"

int main(int argc, char *argv[]) 
{
    // Initialization
    Gtk::Main kit(argc, argv);

    // Create a hello world window object
    HelloWorldWindow example;

    // gtkmm main loop
    Gtk::Main::run(example);
    return 0;
}

Program di atas akan membuat sebuah jendela dengan tombol berlabel "Hello World". Tombol tersebut akan mengirimkan "Hello World" ke output standar ketika diklik.

Program tersebut dapat dijalankan dengan perintah berikut:

$ g++ -std=c++11 *.cc -o example `pkg-config gtkmm-3.0 --cflags --libs`
$ ./example

Ini biasanya dilakukan menggunakan makefile simpel.

 Referensi 

 Pranala luar 


Kategori:Peralatan dan pustaka pengembangan perangkat lunak bebas
Kategori:Perangkat lunak bebas yang diprogram dengan C++
Kategori:Pengikat bahasa GTK
Kategori:Pustaka GNOME