2017-02-13 5 views
1

XmNvisibleItemCount должен возвращать количество видимых элементов в списке. К сожалению, он не возвращает правильные значения при изменении размера окна.XmNvisibleItemCount не возвращает правильное количество элементов при изменении размера окна

XtVaGetValues(myWidget, XmNvisibleItemCount, &vic, XmNitemCount, &ic, NULL); 

Вышеприведенные возвращает nine каждый раз, что количество видимых элементов в списке при открытии моего окна. Однако, когда я изменяю размер окна, все равно nine! Несмотря на видимые элементы: three, если я сжимаю окно или eleven, если я разворачиваю окно.

Как я могу получить XmNvisibleItemCount, чтобы вернуть нужное количество видимых элементов в списке при изменении размера окна?

+0

Это сильно пахнет проблемой X-Y. Чего вы хотите достичь? – tofro

ответ

2

XmNvisibleItemCount не задается виджетами во время изменения размера, а скорее программистом при создании виджета. Если XmList является дочерним элементом виджета менеджера, который управляет его размером, атрибут игнорируется.

Если вы хотите узнать количество видимых элементов (что бы это ни было полезно в любом случае?), Вам нужно рассчитать это самостоятельно из высоты элемента и размеров списка.

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