Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > GTK, ООП, доступ к полям класса?..


Автор: Kurt 16.9.2005, 07:44
Разбираюсь потихоньку с GTK. Хочу написать класс, к-й бы представлял некое конкретное окно. И чтобы методы этого класса были обработчиками событий для виджетов данного окна.
Однако, возникает проблема - обработчик события может быть только СТАТИЧЕСКИЙ метод класса. А как при таких условиях получить доступ к полям моего класса-обертки?
Поясню на примере:
Код

class MainWindow

{

private:

    GtkWidget *_window;


    GtkWidget *_button1;
    GtkWidget *_button2;

.....
public:
          MainWindow(const char *Title="test");

};
..
MainWindow::MainWindow(const char *Title)

{

    _window = gtk_window_new(GTK_WINDOW_TOPLEVEL);

...

    gtk_widget_show(_window);

    return;

}


Как, допустим, написать метод, к-й бы вызывался при клике по _button1 и менял надпись на _button2?

Автор: Vyacheslav 16.9.2005, 08:43
Передавать в качестве параметра еще указатель на объект. И у статической функции тоже иметь такой параметр

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)