Проверка состояния объекта и соответственно изменение другого объекта - PullRequest
0 голосов
/ 08 октября 2011

Я пытаюсь проверить состояние трех флажков и изменить кнопку, в соответствии с которой установлен флажок, однако я не могу понять свою идею.Идея кажется простой, и это было бы, если бы не требуемое определение обратного вызова в Gtk.

Первый вариант

static void mycallback(GtkWidget *widget, gpointer data){

}

Второй вариант

static gboolean myothercb(GtkWidget *widget, gpointer data){

}

этоЯ немного не уверен, что это можно сделать.

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

if (checkbox1 == active) filename = blah;

else if (checkbox2 == active) filename = blah2;

Я полагаю, что самый простой способ был бы, если бы я мог получить возвращаемое значение обратного вызова, сохранить его, а затем проверить значение в определении обратного вызова кнопки.

РЕДАКТИРОВАТЬ: Исправлено, по-видимомупроще всего было добавить обратные вызовы к кнопкам проверки, чтобы проверить, были ли они активными, а затем соответствующим образом изменить имя файла и глобально определить строку для имени файла, а затем передать filename.c_str () в file.open (): D

...