У меня есть настраиваемый элемент управления, для которого я пытаюсь определить функцию OnMouseMoveFunction. По сути, элемент управления функционирует как панель поиска и состоит из окна редактирования с дочерним элементом управления TGrid
для отображения результатов. Я обработки нескольких событий мыши для TGrid
уже, однако при попытке реализовать OnMouseMove я получаю следующее сообщение об ошибке при попытке установить TGrid
OnMouseMove метод:Настройка управления Firemonkey Метод OnMouseMove
E2034 Cannot convert 'void (_fastcall * (_closure)(TMouseMoveEvent))(TMouseMoveEvent)' to 'TMouseMoveEvent'
Вот кусок из заголовка файла где функция определена:
void __fastcall GridMouseMove(TMouseMoveEvent * MouseEvent);
Вот фактическая функция внутри файла CPP элемента управления:
void __fastcall TFmSearchBar::GridMouseMove(TMouseMoveEvent * MouseEvent)
{
//handle event here
}
До этого момента все будет хорошо скомпилировано. Тем не менее, когда я перехожу к назначению обработчика OnMouseMoveEvent методу, который я назначил, я получаю сообщение об ошибке.
void __fastcall TFmSearchBar::SetGridProperties()
{
FGrid->OnKeyDown = GridKeyDown;
FGrid->OnClick = GridClick;
FGrid->OnMouseEnter = GridMouseEnter;
FGrid->OnMouseLeave = GridMouseLeave;
FGrid->OnMouseMove = GridMouseMove; //This line causes the error
}
Что мне не хватает, что заставляет это не строить?