У меня есть клавиатура с 12 кнопками. Когда нажата некоторая кнопка, я хочу, чтобы все кнопки получили альтернативные метки. Как это можно сделать, я полагаю, мне нужно использовать массив для этой цели?Изменить несколько кнопок GTK
0
A
ответ
1
Да, вам нужно будет хранить кнопки в какой-то структуре данных, которые затем вам нужно сделать доступной для обратного вызова обработчика сигнала.
Это часто лучше, чтобы обернуть всю такую информацию о состоянии в структуре, так как он хорошо масштабируется:
typedef struct {
GtkWidget *keypad[12];
} GuiData;
Тогда просто создать экземпляр структуры раз, возможно, в начале main()
, и передать его вокруг:
int main(void)
{
GuiData gui;
gui.keypad[0] = gtk_button_new_with_label("1");
/* ... */
g_signal_connect(G_OBJECT(some_widget), "clicked",
G_CALLBACK(cb_some_button_clicked), &gui);
}
Обратите внимание, как &gui
используется для передачи указателю на структуру состояния GUI функции обратного вызова для работы с нажатием кнопки «некоторые кнопки».
Внутри функции обратного вызова, вы можете получить доступ к клавиатуре:
static void cb_some_button_clicked(GtkWidget *object, gpointer user)
{
GuiData *guidata = user;
gtk_button_set_label(GTK_LABEL(guidata->keypad[0], "4711");
}
Я не пробовал это сейчас, но выше должна быть примерно правильно.
Смежные вопросы
- 1. Несколько кнопок
- 2. Сигналы GTK из массива кнопок Язык C
- 3. Невозможно изменить цвет кнопок на несколько кликов
- 4. Изменить цвет кнопки при нажатии (несколько кнопок)
- 5. gtk callback несколько аргументов
- 6. Несколько кнопок?
- 7. Создание массива кнопок gtk в c
- 8. ListViewAdapter меняет несколько кнопок
- 9. Bootstrap Несколько модальных кнопок
- 10. Кнопки Gtk над областью рисования Gtk
- 11. Gtk #: Изменить информацию, указанную AT
- 12. GTK: Изменить Б.Г. цвет Checkbutton
- 13. Изменить стиль виджетов в GTK #
- 14. Изменить положение конкретных кнопок в GtkHeaderBar?
- 15. C++ gtk открыть несколько окон
- 16. Как создать несколько кнопок сортировки
- 17. Gtk меняет несколько ярлыков при нажатии кнопки
- 18. несколько кнопок раскрывающегося бутстрапа в группе кнопок
- 19. несколько кнопок, связанных кнопок наилучшей практики
- 20. Как добавить несколько кнопок Javascript на несколько кнопок DIV
- 21. Изменить значок кнопок оповещения
- 22. Как изменить цвет кнопок?
- 23. Как изменить цвет кнопок?
- 24. Изменить цвет кнопок CKEditor
- 25. Изменить размер кнопок UIAlertView
- 26. Соберите несколько кнопок
- 27. Несколько счетных кнопок JS
- 28. несколько кнопок на форме
- 29. Несколько кнопок JavaScript (переменные)
- 30. MVC несколько кнопок Проверка