У меня есть два компонента, один из которых является дочерним по отношению к другому, и мне нужно нарисовать линию между ними с помощью mouseDown и MouseUp . Проблема в том, что я не знаю, как найти реальный х, у из shape1 и shape2Как нарисовать линию между двумя компонентами в flex
(компонент является рекурсивным компонент, который я написал)
есть часть моего кода, но не работают правильно
его мой компонент:
<mx:Box id="component" borderStyle="solid" width="100%" height="500">
<local:compforSM id="compForSS" label="پرسپکتیو" rotateLabel="true" statusColor="{0x008000}" layoutType="{compforSM.HORIZENTAL}" width="80%" height="80%" creationComplete="createComplete()" />
мой MouseDownHandler:
private function mouseDown(e:MouseDownOrUpEvent):void {
if (e.target != null) {
if(firstObject == null){
firstObject = e.target;
firstPoint = component.localToGlobal(new Point(component.x, component.y));
firstPoint.x = mouseX - firstPoint.x;
firstPoint.y = mouseY - firstPoint.y;
}
}
}
Спасибо Stefan. первая строка помогла, но верхний левый угол не совсем в верхнем левом углу моего компонента, его немного меньше! А вторая строка относится к неизвестной точке !!! – sami
Добавлен код для рисования линии от центра внутреннего компонента к центру внешнего компонента. Надеюсь это поможет. – Stefan
Работал :) Спасибо @Stefan – sami