GTKmm: присоединение EventBox к ячейке сетки для управления цветом фона
Выполняя поиск в Интернете, я обнаружил, что одним из способов управления цветом фона панели в окне является создание Gtk::EventBox
объект и изменить его цвет bg с помощью метода override_background_color
,
У меня есть builder
объект, созданный из файла Glade. Рисует простую рамку (Gtk::Window *matchWindow
) с сеткой 8x8 (Gtk::Grid *Grid
).
Как только создатель будет создан, я хотел бы создать Gtk::EventBox
через код C++ и добавить его в сетку. Код, который я написал, выглядит следующим образом:
ФАЙЛ Main.h
[...]
private:
Gtk::EventBox *myEventBox;
ФАЙЛ Main.cpp
Main::Main() {
[...]
myEventBox = new Gtk::EventBox;
BuildMatchField();
[...]
}
void Main::BuildMatchField() {
// Set GB color of the EventBox to BLACK
myEventBox->override_background_color(Gdk::RGBA("#000000"));
matchWidgets.Grid->attach(*myEventBox,0,0,1,1);
matchWidgets.Grid->show_all_children();
}
При запуске программы никаких ошибок не появляется, кроме BuildMatchField()
не работает: черная панель не отображается.
Я последовал примеру Grid в официальном руководстве Gnome
Любое предложение?