Delphi - перемещение перекрывающихся TShapes

Мне нужна была собственная форма треугольника, поэтому я унаследовал форму класса треугольника TShape и переопределил метод рисования. Все работает нормально, но мне нужно двигать эти фигуры мышью. Я установил метод для каждой формы, обрабатывающей событие onMouseDown. Переезд работает тоже нормально. Но если две фигуры перекрываются (фигуры на самом деле являются прямоугольниками с некоторыми прозрачными областями), что прозрачная область верхней формы находится над другой фигурой, тогда верхняя фигура перемещается вместо фигуры ниже. Правильно, так работает Delphi. Но для пользователя это не интуитивно понятно. Как я могу этого добиться? Есть ли возможность не удалять событие из очереди событий и не отправлять его в базовые фигуры, если да, это будет просто?

6
задан Cœur 19 August 2017 в 12:56
поделиться