2016-07-14 5 views
3

С помощью этого кода:Почему строка gtkmm get_value не работает?

size = 100; 
uint64_t work; 
row.get_value(3, work); 
cout << "value was " << work << endl; 
work += size; 
cout << "value set to " << work << endl; 
row.set_value(3, work); 
row.get_value(3, work); 
cout << "value now " << work << endl; 

Я ожидаю, что этот вывод:

value was 0 
value set to 100 
value now 100 

, но я получаю:

value was 0 
value set to 100 
value now 0 

Обновленное значение, 100, делает дисплей правильно в виде дерева виджета , Я просто не могу прочитать его с get_value. Что я делаю не так?

+0

Проверьте документацию на 'set_value()'; вы уверены, что 'row' по-прежнему указывает на ту же строку после этого? – andlabs

ответ

1

Оказывается, проблема была в uint64_t; строка [3] была определена (в Glade) как guint, рабочая переменная должна точно соответствовать этому типу или get_value не будет работать.

 Смежные вопросы

  • Нет связанных вопросов^_^