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

Вниз

Как узнать, по какой колонке был клик в TListView?   Найти похожие ветки 

 
avoid   (2007-10-29 18:33) [0]

Подобный вопрос частично решен здесь

http://delphiworld.narod.ru/base/tlistview_column_click.html
http://www.btc.lancom.ru/programming/base/tlistview_column_click.html

однако эта функция не работает, если у ListView включен RawSelect=True. Также если поле SubItem пустое выдает значение 0.

Может ли кто-то подсказать как сделать работу с включенным RawSelect и как быть с пустыми SubItem?


 
Lacmus ©   (2007-10-29 21:18) [1]



uses
 CommCtrl;

function TListViewX.GetItemAtX(X, Y: integer;
 var Col: integer): TListItem;
var
 hHeader: THandle;
 HitTestInfo: HD_HITTESTINFO;
begin
 Result := GetItemAt(X, Y); Col := -1;
 if ViewStyle = vsReport then begin
   hHeader := SendMessage(Handle, LVM_GETHEADER, 0, 0);
   if hHeader <> 0 then begin
     FillChar(HitTestInfo, SizeOf(HitTestInfo), 0);
     HitTestInfo.Point := Point(X, 0);
     Col := SendMessage(hHeader, HDM_HITTEST, 0, Integer(@HitTestInfo));
   end
 end
end;



 
avoid   (2007-10-29 22:19) [2]

Спасибо!



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

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

Наверх




Память: 0.47 MB
Время: 0.018 c
2-1199938728
hero
2008-01-10 07:18
2008.02.03
Помогите отсортировать ListView не по caption


2-1200012250
Abcdef123
2008-01-11 03:44
2008.02.03
Пробелы знаний DOSa


15-1198164826
No_Dead
2007-12-20 18:33
2008.02.03
А кто он Великий?


11-1183049737
Nikfel
2007-06-28 20:55
2008.02.03
Как создать свой компонент.


4-1182934526
Nikfel
2007-06-27 12:55
2008.02.03
Как из ico достать ico размером 16x16 или 48x48