WikiDer > Gtkmm

Gtkmm

Gtkmm
Репозиторий Отредактируйте это в Викиданных
Написано вC ++
ПлатформаGTK
ТипПривязка к языку
ЛицензияСтандартная общественная лицензия ограниченного применения GNU
Интернет сайтwww.gtkmm.org

gtkmm (ранее известный как gtk-- или же gtk минус минус[1]) является официальным C ++ интерфейс для популярных GUI библиотека GTK. gtkmm это бесплатно программное обеспечение распространяется в рамках Стандартная общественная лицензия ограниченного применения GNU (LGPL).

gtkmm позволяет создавать пользовательские интерфейсы либо в коде, либо с Дизайнер интерфейсов Glade, используя класс Gtk :: Builder. Другие функции включают безопасный тип обратные вызовы, полный набор графические элементы управления, а также расширяемость виджетов с помощью наследование.

Функции

Поскольку gtkmm является официальным C ++ интерфейс GUI библиотека GTK, C ++ программисты могут использовать общие ООП такие методы, как наследование, и C ++-специальные объекты, такие как STL (Фактически, многие интерфейсы gtkmm, особенно для виджет контейнеры, разработаны так, чтобы быть похожими на Стандартная библиотека шаблонов (STL)).

Основные возможности gtkmm перечислены ниже:

Привет, мир в gtkmm

//HelloWorldWindow.h#ifndef HELLOWORLDWINDOW_H#define HELLOWORLDWINDOW_H#включают <gtkmm/window.h>#включают <gtkmm/button.h>// Создание нового оконного виджета из существующего.// Это окно будет содержать только кнопку с надписью "Hello World"учебный класс HelloWorldWindow : общественный Gtk::Окно{  общественный:    HelloWorldWindow();  защищенный:    Gtk::Кнопка Привет, мир;};#endif
//HelloWorldWindow.cc#включают <iostream>#включают "HelloWorldWindow.h"HelloWorldWindow::HelloWorldWindow() : Привет, мир("Привет, мир"){    // Устанавливаем заголовок окна.    set_title("Привет, мир");    // Добавляем кнопку-член в окно,    Добавить(Привет, мир);    // Обрабатываем событие "щелчок".    Привет, мир.signal_clicked().соединять([] () {          стандартное::cout << "Привет, мир" << стандартное::конец;    });    // Отображаем все дочерние виджеты окна.    show_all_children();}
//main.cc#включают <gtkmm/main.h>#включают "HelloWorldWindow.h"int главный(int argc, char *argv[]) {    // Инициализация    Gtk::Главный Комплект(argc, argv);    // Создаем объект окна hello world    HelloWorldWindow пример;    // основной цикл gtkmm    Gtk::Главный::пробег(пример);    возвращаться 0;}

Вышеупомянутая программа создаст окно с кнопкой «Hello World». При нажатии кнопки на стандартный вывод выводится сообщение «Hello world».

Программа запускается с помощью следующих команд:

$ g ++ -std=c ++ 11 * .cc -o пример `pkg-config gtkmm-3.0 --cflags --libs`$ ./пример

Обычно это делается с помощью простого makefile.

Приложения

Некоторые известные приложения, использующие gtkmm, включают:

Смотрите также

Рекомендации

  1. ^ FAQ по gtkmm
  2. ^ "Debian - Подробная информация о пакете amsynth в jessie". Получено 2017-03-06.
  3. ^ "Debian - Подробная информация о пакете cadabra в jessie". Получено 2017-03-06.
  4. ^ "Debian - Подробная информация о пакете gnome-system-monitor в jessie". Получено 2017-03-06.
  5. ^ "Debian - Подробная информация о пакете gigedit в jessie". Получено 2017-03-06.
  6. ^ "Debian - Подробная информация о пакете pavucontrol в jessie". Получено 2017-03-06.
  7. ^ "Debian - Подробная информация о пакете paman в jessie". Получено 2017-03-06.
  8. ^ "Debian - Подробная информация о папках пакета в jessie". Получено 2017-03-06.
  9. ^ "Debian - Подробная информация о пакете pavumeter в jessie". Получено 2017-03-06.
  10. ^ "Debian - Подробная информация о пакете rawtherapee в jessie". Получено 2017-03-06.
  11. ^ "Debian - Подробная информация о пакете seq24 в jessie". Получено 2017-03-06.
  12. ^ «Debian - Подробная информация о пакете synfigstudio в jessie». Получено 2017-03-06.
  13. ^ "Debian - Подробная информация о пакете linthesia в jessie". Получено 2017-03-06.
  14. ^ «Debian - Подробная информация о пакете mysql-workbench в jessie». Получено 2017-03-06.
  15. ^ "Debian - Подробная информация о пакете visualboyadvance-gtk в jessie". Получено 2017-03-06.

внешняя ссылка