Немного модифицировал. Ну или можно сделать как подсказали выше)
CODE:
external(INT, "CreateWindow", "CreateWindowExA", "User32.dll" );
int b2,x,y,g,c;
win w;
int pos_size_edit0[1][4];
string text_edit0[1];
pos_size_edit0[0][0]=69; pos_size_edit0[0][1]=98; pos_size_edit0[0][2]=100; pos_size_edit0[0][3]=20;
text_edit0[0]="Поле 0";
createdialog(0);
showdialog(0, "Диалог",100, 100, 300, 300, 1, 1);
function getmessage(0, WM_CREATE)
{
b2=CreateWindow(0, "BUTTON", "Диалог", 1342177280, 10, 50, 120, 30, gethwnd(0), 0, 0, 0);
}
function getmessage(0, WM_COMMAND)
{
if (message.lparam==b2){
getmouse(x,y);
w=getwindow(1,x,y); //получаем указатель на контрол под мышкой
g=w.leftclient; //позиция позиция клиетской части по x относительно левого края экрана
c=w.topclient; //позиция клиетской части по y относительно левого края экрана
createdialog(1, EDIT, #pos_size_edit0[0][0], #text_edit0[0]);
showdialog(1, "Диалог", g, c, 250, 300, 0, 1);
}
}
loop()pause(100);