Как отменить щелчок мышью в TDbGrid.OnColumnMoved

В обработчике событий TDbGrid.OnColumnMoved , я корректирую цвета заголовков некоторых столбцов.

Я также использую событие сетки OnTitleClicked , чтобы открыть всплывающее меню (сортировка по столбцу).

К сожалению, после того, как пользователь перетащит столбец и завершится OnColumnMoved , VCL вызывает OnTitleClicked . Это означает, что всплывающее окно с порядком сортировки появляется после перетаскивания столбца.

Есть ли способ в OnColumnMoved очистить очередь событий мыши, чтобы не вызывать OnTitleClicked ?

Этот поток имеет этот код, но У меня нет Msg в OnTitleClicked .

while PeekMessage(Msg, 0, WM_MOUSEFIRST, WM_MOUSELAST, 
  PM_REMOVE or PM_NOYIELD) do;

(Если нет способа сделать это, ничего страшного. Я могу установить флаг в OnColumnMoved , чтобы OnTitleClick игнорировал его следующий вызов.)

6
задан Community 23 May 2017 в 11:55
поделиться