LINUX.ORG.RU

gtkmm наслоение виджетов


0

0

Привет всем, в gtkmm абсолютный новичек, потому возможно простой вопрос.

Нужно отобразить виджеты однин под другим, для этого использую Gtk::Table:

#include <gtkmm.h> [code] int main(int argc, char *argv[]) { Gtk::Main kit(argc, argv); Gtk::Window window;

Gtk::Table tbl(1,3, true);

Gtk::Entry entry; Gtk::Button btn;

tbl.attach(entry, 0, 2, 0 , 1); tbl.attach(btn, 1, 3, 0 , 1); // этот виджет накладывается частично на entry

window.add(tbl); window.show_all();

Gtk::Main::run(window);

return 0; } [/code]

В результате entry всегда нахотися над btn, мне нужно как-то контролировать, что под чем отображается, в частности этот btn поместить над entry. Может я не тот контейнер выбрал. Как сие победить?

> В результате entry всегда нахотися над btn

В таблице одна строка. Как что-то может быть над/под?

yura_dev
()
Ответ на: комментарий от mono

Играл я и с этим. Не помогает, кнопка всегда под entry.

Вообще, может я неправльные средства выбрал. Мне нужно, что бы по определенному событию (вообще-то это драг) в центре виджета появилось определенное окошечко, которое должно находиться поверх существующего, не полностью его перекрывающее. Для этого я хочу использовать Gtk::Table, как-то так:

- Допустим создам Table (5, 5); - В него помещаю основной widget (растягиваю на все ячейки) - В него же помещаю дополнительный widget (в центральную ячейку) - По событию показываю дополнительный контрол. - По другому событию скрываю этот контол.

Пробовал следовать этому сценарию, так мой дополнительный контол также как и в этом примере перекрывается некоторыйми контолами с основного виджета.

Пробовал построить интерфейс с помощью glade, тот же эффект - entry перекрывает кнопку.

Mmmaloy
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.