Вниз
Скачать: 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.035 c
2-1137655225
СержК
2006-01-19 10:20
2006.02.05
Как просмотреть и обработать содержимое папки


10-1112891389
eugene32
2005-04-07 20:29
2006.02.05
Поиск в Excel. :(


4-1132310115
Stany
2005-11-18 13:35
2006.02.05
отлов MessageBox а от определ. окна


15-1137059969
Sandman29
2006-01-12 12:59
2006.02.05
Возможен ли резкий скачок температуры


4-1132933783
badevlad
2005-11-25 18:49
2006.02.05
Получить путь к файлу по его Handle




   Наверх