Here is a sample app which does what you describe.
- Gordon
?xml version=1.0 encoding=utf-8?
mx:Application xmlns:mx=http://www.adobe.com/2006/mxml;
mx:Script![CDATA[
import mx.containers.Canvas;
import mx.containers.TitleWindow;
import mx.controls.Button;
import mx.managers.PopUpManager;
private var popUp:TitleWindow;
private function b_clickHandler(event:MouseEvent):void
{
var b:Button = Button(event.target);
var pt:Point = b.localToGlobal(new Point(0, 0)); // global
coords of b's top-left corner
// var pt:Point = vb.localToGlobal(new Point(b.x, b.y)); //
another way to compute the global coords of b's top-left corner
createPopUp(pt.x, pt.y + b.height + 2);
}
private function createPopUp(x:Number, y:Number):void
{
popUp = new TitleWindow();
popUp.x = x;
popUp.y = y;
popUp.width = 100;
popUp.height = 100;
popUp.title = Panel;
popUp.setStyle(styleName, opaquePanel);
popUp.showCloseButton = true;
popUp.addEventListener(Event.CLOSE, popupCloseHandler);
PopUpManager.addPopUp(popUp, this);
}
private function popupCloseHandler(event:Event):void
{
PopUpManager.removePopUp(popUp);
popUp = null;
}
]]/mx:Script
mx:VBox
mx:TabNavigator width=300 height=200
mx:VBox id=vb label=Tab 1
mx:Repeater id=r dataProvider={[ 1, 2, 3 ]}
mx:Button id=b label=Button {r.currentItem}
click=b_clickHandler(event)/
/mx:Repeater
/mx:VBox
/mx:TabNavigator
/mx:VBox
/mx:Application
From: flexcoders@yahoogroups.com [mailto:[EMAIL PROTECTED] On
Behalf Of zipo13
Sent: Sunday, February 25, 2007 1:18 AM
To: flexcoders@yahoogroups.com
Subject: [flexcoders] Re: How to get the real X Y of a repeater item
Hi,
Thank you for the help but non of these methods seem to help.
The repeater I use is in a canvas that sits in a tab navigator that
sits in a vbox in an application.
All in different components.
I have tried to open the dialog:
var pt:Point = new Point(event.stageX, event.stageY);
pt = event.target.contentToGlobal(pt);
this.renameTagDlg.x = pt.x;//
this.renameTagDlg.y = pt.y;//
I've changed the contentToLocal to all 6 possibilities but none of
them work.
contentToGlobal,contentToLocal,globalToContent,globalToLocal,localToCont
ent,localToGlobal
I have even tried to get the X,Y of the mouse globalyy and just open
the dialog there but that didn't work too.
I think that jer_ela was on the right track but I just can subtract
all the containers X Y.
THIS IS SO FRUSTRATING.
--- In flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com
, Robert Chyko [EMAIL PROTECTED] wrote:
or if your container uses absolute positioning you would need to use
contentToGlobal
-Original Message-
From: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com
[mailto:flexcoders@yahoogroups.com
mailto:flexcoders%40yahoogroups.com ] On Behalf Of Keun Lee
Sent: Friday, February 23, 2007 2:09 PM
To: flexcoders@yahoogroups.com mailto:flexcoders%40yahoogroups.com
Subject: Re: [flexcoders] Re: How to get the real X Y of a
repeater item
Hey you might want to also look into localToGlobal
I.e
var comp : UIComponent = UIComponent(
event.target ); var point : Point = comp.localToGlobal(
new Point( comp.x, comp.y ) ); trace( point.x + : +
point.y );
-Keun
On 2/22/07 9:24 AM, jer_ela [EMAIL PROTECTED] wrote:
The following code gets the x and y positions of an
image that has
been clicked on that was generated by a repeater.
Getting the coords
for a button should be pretty much the same.
stageX and Y are the x and y coords of the mouse
position relative to
the application stage. mainCanvas is a direct child of
the application
and is the container that I want the coords relative to.
If you have
additional containers between the stage and the one you
need coords
relative to, you have to subtract the x and y at each
level to get
from stage coords to that container's coords.
Subtracting the mouseX
and Y moves the coords from the point or the click to
the upper left
corner of the image.
selectedImage.x = event[stageX] - mainCanvas.x
- event.currentTarget.mouseX;
selectedImage.y = event[stageY] - mainCanvas.y
- event.currentTarget.mouseY;
--- In flexcoders@yahoogroups.com
mailto:flexcoders%40yahoogroups.com
mailto:flexcoders%40yahoogroups.com
mailto:flexcoders%40yahoogroups.com , zipo13 zipo13@ wrote:
Hi,
In my app I create a repeater the generats VBoxes each
with button
in it.
When the user clicks on the button I want to generate
a small dialog
that will open up under the button