Вниз
Скачать: CL | DM;

Сортировка TListView по колонкам   Найти похожие ветки 

← →
френк   (2005-12-29 19:20) [0]

Как быть? Посоветуйте как отловить клик по header"у ListView, определить по какой кнопке заголовка кликнули. Хочу просто сделать сортировку по одной из колонок.

Интуиция подсказывает что надо обработать сообщение, но вот какое. Как лучше организовать subj )


← →
begin...end ©   (2005-12-29 19:25) [1]

Обратите внимание на событие OnColumnClick.


← →
френк   (2005-12-29 19:29) [2]

пошел, убил себя об стенку. простите дурня.

еще вопрос: при нажатии CTRL+SHIFT+серый+ происходит автовыравнивание ширины колонок. как бы это сделать программно, подскажите, плиз.


← →
begin...end ©   (2005-12-29 19:51) [3]

> френк   (29.12.05 19:29) [2]

Возможно, есть более простое решение, но я вижу только такое:

uses CommCtrl;

var
 I: Integer;
begin
 for I := 0 to Pred(ListView.Columns.Count) do
   SendMessage(ListView.Handle, LVM_SETCOLUMNWIDTH, I, LVSCW_AUTOSIZE)
end


← →
френк   (2005-12-29 20:30) [4]

большое спасибо, как раз то, что надо.
с наступающим!


← →
френк   (2005-12-29 20:38) [5]

вот бы еще при подобном автосайзе размер не становился меньше, чем caption в header"e. а то данные то вмещаются to fit :) а caption часто пропадает, если к примеру данных нет в столбце =(


← →
begin...end ©   (2005-12-29 20:44) [6]

> френк   (29.12.05 20:38) [5]

Попробуйте заменить в [3] LVSCW_AUTOSIZE на LVSCW_AUTOSIZE_USEHEADER.


← →
френк   (2005-12-29 20:55) [7]

мое почтение. респект. где информацию черпаешь? MSDN / собственный опыт? или и то и другое? мне на будующее. чтобы я с дуратскими вопросами не сувался )


← →
begin...end ©   (2005-12-29 21:05) [8]

> френк   (29.12.05 20:55) [7]

И то, и другое.
:-)


← →
Igor_thief   (2006-01-01 21:33) [9]

В интернете есть полно готовых решений.


← →
Наиль ©   (2006-01-03 17:10) [10]

Можно и без MSDN.
ListColumns[x].Width:=-1; - выравнивание по тексту в столбце
ListColumns[x].Width:=-2; - выравнивание по заголовку столбца.

Почему-то исчезло из хелпа D7, раньше было.
Надёжнее вместо чисел -1 и -2 использовать
LVSCW_AUTOSIZE и LVSCW_AUTOSIZE_USEHEADER, соответственно.



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.026 c
2-1137650850
Nan
2006-01-19 09:07
2006.02.05
Авто инициализация переменной целого типа


1-1135772527
kyn66
2005-12-28 15:22
2006.02.05
Как набрать правильно массив случайных чисел?


15-1137059476
Plastic
2006-01-12 12:51
2006.02.05
А что такое индент-печать на пластиковой карте?


3-1133813794
makvell
2005-12-05 23:16
2006.02.05
сформировать список...


1-1136712811
BiggieSmalls
2006-01-08 12:33
2006.02.05
Генератор случайных букв :)




   Наверх