Главная страница
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.023 c
3-1190862009
Arkadiy
2007-09-27 07:00
2008.02.03
строковое поле


2-1199977556
Footballer
2008-01-10 18:05
2008.02.03
IP-адрес удалённого компа


2-1199293276
Первокласник Вася
2008-01-02 20:01
2008.02.03
Как работать с дисками?


1-1193671998
avoid
2007-10-29 18:33
2008.02.03
Как узнать, по какой колонке был клик в TListView?


6-1179421883
maker
2007-05-17 21:11
2008.02.03
Запросы принимаемые CGI