Создаю я диалог. На WM_INITDIALOG - заполняю ListBox. На WM_MEASUREITEM - заполняю структуру. При отрисовке ListBox'a я не могу получить какой элемент отрисовывать. Посылаю LB_GETTEXT выводит всякую чушь.
Я отрисовываю ListBox, чтоб сделать сортировку, однако, как я понял, нельзя использовать флаг HASSTRINGS.
Если в листе не строки, а например, структуры, тогда HASSTRINGS не нужен. Для сортировки нужен обработчик WM_COMPAREITEM.
Код (Text): The LBS_SORT style causes the list box to sort strings alphabetically that are added to the list box with an LB_ADDSTRING message in either of these cases: * If the list box is an owner-drawn list box with the LBS_HASSTRINGS style * If the list box is not an owner-drawn list box В MFC используется DWI^.ItemData. Однако когда его использую я у меня выводиться корректно только последний добавленный элемент.
То есть если я использую собственную прорисовку и LBS_HASSTRINGS то система не будет отслыать WM_COMPAREITEM.
...н-да... нет больше идей у меня... Если не против - можешь послать код на asmguru62@hotmail.com - может чем помогу.
Он чуть-чуть не на асме, а точнее совсем не на нём Хотя если знаешь синтаксис Pascala, с удовольствием приму твою помошь.