Ver Mensaje Individual
  #1  
Antiguo 16-03-2004
Majo Majo is offline
Miembro
 
Registrado: jun 2003
Posts: 43
Reputación: 0
Majo Va por buen camino
Cool Convertir un punto X,Y sobre una form a coordenadas Absolutas (Pantalla)

Hola amigos,

Mi prblema es el siguiente:

Tengo dos Form (Form1 y Form2).
Form1.FormStyle:=fsMDIForm
Form2.FormStyle:=fsMDIChild, inicialmente, tenía las dos forms configuradas con formStyle normal y no tenía ningún problema con las coodenadas, pero al configurarlas de esta manera ocurre un desplazamiento en las coordenadas.

El asunto es que tengo un punto sobre la form2 (X,Y) y necesito trasladar este punto a coordenadas absolutas, es decir, con respecto a la pantalla.

Tengo una función "Un tanto rudimentaria", pero al principio funcionaba, cuando los formStyle estaban en normal.

Código:
{Toma un punto sobre una Form y lo convierte a coordenadas
absolutas}
function CoordenadaAbsoluta(FormPoint:TPoint;Form:TForm):TPoint;
 var PuntoAbsoluto:TPoint;
begin
    PuntoAbsoluto.X:=FormPoint.X+Form.Left+
                      ((Form.Width-Form.ClientWidth) div 2);//ancho del borde izquierdo
    PuntoAbsoluto.Y:=FormPoint.Y+Form.Top+
                      (Form.Height-Form.ClientHeight)
                      -((Form.Width-Form.ClientWidth) div 2);
    Result:=PuntoAbsoluto;
end;
si alguien me puede decir cual es el error, se lo agradecería....

Gracias de antemano..... Suerte
Responder Con Cita