Главная страница
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.016 c
2-1199922658
Александр Ш.
2008-01-10 02:50
2008.02.03
Помогите новичку!


2-1199966820
Dana
2008-01-10 15:07
2008.02.03
Tab в DBGrid


2-1199798648
AntonUSAnoV
2008-01-08 16:24
2008.02.03
Помогите!


15-1198833334
авыф
2007-12-28 12:15
2008.02.03
Perl или PHP


2-1199828877
Артем
2008-01-09 00:47
2008.02.03
Edit.Text преобразовать в WideString