Ver Mensaje Individual
  #5  
Antiguo 30-12-2008
Luvac Luvac is offline
Miembro
 
Registrado: nov 2007
Posts: 24
Reputación: 0
Luvac Va por buen camino
Bueno gracias por ayudarme pero aun no logro hacerlo el ejemplo que me dejastes no logro bajarlo me aparece una pagina de php, podrias poner el codigo, he intentado con lo que dejastes y funciona a veces y otras se cicla te dejo el codigo que llevo:

Result=false;
if(X>Button1->Left)
{
Button1->Left+=10;
}
if(X<Button1->Left)
{
Button1->Left-=10;
}
//Left
if(X>Button1->Left)
{
for(int x=Button1->Left; x<=X;x++)
{
Button1->Left=x;
colision();
if (Result==true)
{
x=X;
}
}
}
else
{
for(int x=Button1->Left; x>=X;x--)
{
Button1->Left=x;
colision();
if (Result==true)
{
x=X;
}
}
}
if( Result!=true)
{
//Top
if(Y>Button1->Top)
{
for(int x=Button1->Top; x<=Y;x++)
{
Button1->Top=x;
colision();
if (Result==true)
{
x=X;
}
}
}
else
{
for(int x=Button1->Top; x>=Y;x--)
{
Button1->Top=x;
colision();
if (Result==true)
{
x=X;
}
}
}
}
}
//---------------------------------------------------------------------------
void TForm1::colision()
{
int r1, r2, b1, b2;
r1=(Button1->Left + Button1->Width);
r2= (Button2->Left + Button2->Width);
b1= (Button1->Top + Button1->Height);
b2=(Button2->Top + Button2->Height);
if (((Button1->Left < Button2->Left) && (r1 > Button2->Left)) && ((Button1->Top < Button2->Top) && (b1 > Button2->Top)) ||((Button2->Left < Button1->Left) && (r2 > Button1->Left)) &&((Button2->Top < Button1->Top) &&(b2 > Button1->Top)) ||((Button1->Left < Button2->Left) &&(r1 > Button2->Left)) &&((Button2->Top < Button1->Top) &&(b2 > Button1->Top)) ||((Button2->Left< Button1->Left) &&(r2 > Button1->Left)) && (( Button1->Top < Button2->Top) &&(b1 > Button2->Top)))
{
Result=true;
}

}
//---------------------------------------------------------------------------

tiene un problema que estoy resolviendo ya que cuando te acercas al otro boton se para, pero ya no se mueve porque la condicion se cumple ya que estan cerca por eso en la funcion de mouse down le incremento 10 para que se aleje cada que se da un click. espero me puedas dar una mano
Responder Con Cita