Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2012.01.29;
Скачать: CL | DM;

Вниз

многострочный listbox   Найти похожие ветки 

 
alexjfx   (2010-08-28 17:20) [0]

собственно, как грамотно реализовать разбиение строк в списке, с учетом того, что ширина списка может меняться в реальном времени, а сам он может содержать достаточно много строк (items)?

проблема в том, что при изменении ширины списка событие OnMeasureItem, очевидно, не срабатывает, т.к. высота строки не меняется...


 
~AQUARIUS~   (2010-08-28 17:35) [1]

http://msdn.microsoft.com/en-us/library/bb761348(VS.85).aspx


 
alexjfx   (2010-08-28 17:41) [2]

я так понимаю, это событие вызывать в OnDrawItem?


 
~AQUARIUS~   (2010-08-28 18:42) [3]

Нет. Надо выставить стиль Листбокса в lbOwnerDrawVariable, сделать обработку OnDrawItem. А это... отправлять (не вызывать!!) - в любом удобном месте, передавая индекс нужного итема ы желаемую высоту для него. Крайне не рекомендовал бы делать это в OnDrawItem т.к. (правда не уверен) нарветесь на бесконечную рекурсию - прорисовка - изменение высоты итема, которое вновь вызывает прорисовку. Кстати, а там ведь все написано, на совершенно понятном английском


 
alexjfx   (2010-08-28 19:58) [4]

все, разобрался. спасибо за помощь)



Страницы: 1 вся ветка

Текущий архив: 2012.01.29;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
15-1318345230
Awesome-o 4000
2011-10-11 19:00
2012.01.29
Прошу дать совет


2-1319387079
Анна
2011-10-23 20:24
2012.01.29
срочна нужна помощь в написании прогррамм...


15-1318451402
Юрий
2011-10-13 00:30
2012.01.29
С днем рождения ! 13 октября 2011 четверг


2-1319188793
igorium
2011-10-21 13:19
2012.01.29
Как рисовать на канве картинки, которая не помещается на экран?


2-1319009272
Cobalt
2011-10-19 11:27
2012.01.29
[Pascal Error] E2250 There is no overloaded version of <function>