nesco писал(а):
Короче, никакой MouseMove не происходит при HDN_ITEMCHANGING. Он работает точно так же, как и HDN_ITEMCHANGED, только выдает значение перед изменениемВставляем такой код:
#pas
WM_NOTIFY:
case HD_NOTIFY(Pointer(Msg.LParam)^).Hdr.code of
-320 : begin
dtInteger(di, PHDNotify(PNMHEADER(Msg.LParam))^.pItem^.cxy);
_hi_onEvent_(_event_onClick, di);
end;
По умолчанию в винде эти события все же происходят. Эту у нас с вами они отключены. У меня XP и включить их могу так: Нажимаю клавиши Win+PauseBreak, а дальше по картинки:
win_setting.png
У меня ведь получилось заблокировать изменения ширины столбцов и даже отображение курсора над сплитером удалось убрать.
Если у вас получится обнаружить событие при сдвиге вертикального скролла (когда ширина всех столбцов больше ширины компонента), то можно будет попробовать сделать отдельный элемент для создания собственных заголовков столбцов.