Как выбрать элемент управления на основе текущей позиции мыши в Delphi IDE? - PullRequest
0 голосов
/ 09 января 2020

Надеюсь, кто-то может помочь - я знаю о BorlandIDEServices и примерно, как их использовать. Я создаю небольшой компонент, который должен знать текущий элемент управления под курсором мыши в Delphi IDE, даже если этот элемент управления не выбран. Я думал об использовании следующего, но координаты не верны, и я получаю нулевой результат, даже если в указанной позиции есть элементы управления в форме. Может быть, что ControlAtPos() не работает во время разработки, но я не уверен.

if Supports(BorlandIDEServices,IOTAModuleServices,MServices) then
begin
  if Supports((MServices.CurrentModule as IOTAModule).CurrentEditor,IOTAEditor,FEditor) then
  begin
    AForm := TForm(INTAComponent(FEditor.GetCreateParent).GetComponent.Owner);
    AControl := AForm.ControlAtPos(AForm.ScreenToClient(Mouse.CursorPos),False);

Не уверен в наилучшем подходе для этого.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...