gtkmm is the official C++ interface for the popular GUI library GTK. Highlights include typesafe callbacks, and a comprehensive set of widgets that are easily extensible via inheritance. You can create user interfaces either in code or with the Cambalache User Interface designer, using Gtk::Builder. There's extensive documentation, including API reference and a tutorial.

gtkmm is free software distributed under the GNU Lesser General Public License (LGPL).


  • Χρήση κληρονομικότητας για παραγωγή προσαρμοσμένων γραφικών στοιχείων.
  • Χειριστές σήματος με ασφάλεια τύπου, σε τυπική C++.
  • Πολυμορφισμός.
  • Χρήση της τυπικής βιβλιοθήκης C++, συμπεριλαμβάνοντας συμβολοσειρές, περιέκτες και επαναλήπτες.
  • Πλήρης διεθνοποίηση με UTF8.
  • Πλήρης διαχείριση μνήμης C++
    • Σύνθεση αντικειμένου
    • Αυτόματη αποκατανομή δυναμικά κατανεμημένων γραφικών στοιχείων.
  • Πλήρης χρήση ονοματοθεσίας C++.
  • Χωρίς μακροεντολές.
  • Cross-platform: Linux (gcc), FreeBSD (gcc), NetBSD (gcc), Solaris (gcc, Forte), Win32 (gcc, MSVC 2013 or later (gtkmm3), MSVC 2017 or later (gtkmm4)), MacOS X (gcc), others
  • Ελεύθερο λογισμικό και δωρεάν και για ανοικτό κώδικα και για ιδιοταγή ανάπτυξη.
  • Συζητημένο, σχεδιασμένο και υλοποιημένο δημόσια.

Άλλες βιβλιοθήκες σχετικές με gtkmm

gtkmm is a GUI toolkit and nothing more, and it strives to be the best C++ GUI toolkit. That mandate does not cover generic C++ data structures, an XML parser, or database access. Even our signal/slots system is part of a separate (libsigc++) library. However, gtkmm is designed to work well with all other C++ libraries.

Be sure to check out our companion libraries, glibmm (UTF8 strings, etc), pangomm (font layout), libsigc++ (signal/slots) and libxml++ (XML parser).