Вниз
Скачать: 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 вся ветка

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



Память: 0.45 MB
Время: 0.017 c
1-1192691199
Alex_Ne
2007-10-18 11:06
2008.02.03
Вызов MDICild-формы из Dll


3-1190862009
Arkadiy
2007-09-27 07:00
2008.02.03
строковое поле


3-1190651435
jsnx
2007-09-24 20:30
2008.02.03
Проблема с QuickReport в количестве отчетов


15-1198483076
wipr
2007-12-24 10:57
2008.02.03
Проблемы с регистрацией Borland Developer Studio 2006


2-1199617359
WebSQLNeederr
2008-01-06 14:02
2008.02.03
Как загрузить изображение в TPaintBox




   Наверх