Я добавляю один GtkVBox в GtkViewPort.
И я делаю прокрутку для GtkViewPort на основе двух кнопок вверх / вниз.
Мне нужно отобразить последний элемент в VBox, как мы делаем на экранах чата сообщений (список сообщений чата отображает / добавляет последнее сообщение чата внизу списка), я делаю точную вещь.
, так что дляпрокручивая внизу GtkViewPort, который я делаю в обратном вызове события карты.
GtkAdjustment* adjustment;
adjustment = gtk_viewport_get_vadjustment(GTK_VIEWPORT(viewport_list));
gtk_adjustment_set_value(adjustment, gtk_adjustment_get_upper(adjustment));
Так что это прекрасно работает.в конце он отображает новый добавленный виджет в Vbox.
для некоторых внешних событий я добавляю новые виджеты в свой VBox и снова вызываю приведенный выше код для отображения этих новых добавленных виджетов.при первом добавлении он вообще не прокручивается, но при втором добавлении в VBOX он прокручивается до второго последнего виджета в списке.
Почему это может происходить.
Есть еще один способ прокрутки GtkViewPort до конца.?
Спасибо за чтение:)