Código:
int centroAncho = Image2->Left / 2 + Image2->Width / 2; //Centro del ancho de la imagen
int centroAlto = Image2->Top / 2 + Image2->Height / 2; //Centro del alto de la imagen
int centroScrollAncho = ScrollBox2->Width / 2; //Centro del ancho del ScrollBox
int centroScrollAlto = ScrollBox2->Height / 2; //Centro del alto del scrollbox
Entonces se me ocurrio que si sustituyo "centroAncho" por "centroScrollAncho" y luego despejo la ecuacion para obtener Image2->Left pues ya lo tendria y lo mismo para el Top y lo hice asi:
Código:
Image2->Left = (centroScrollAncho - Image2->Width / 2) * 2;
Image2->Top = (centroScrollAlto - Image2->Height / 2) * 2;
Algo hay mal o en el despeje o en el planteamiento porque no obtengo lo que deseo.
La imagen la muevo por dentro del scrollbox y no permito que el borde inferior de la imagen suba mas arriba del borde inferior del scrollbox excepto cuando la imagen tenga un alto menor que el del scrollbox y lo mismo con el borde derecho. Le sumo el alto de la imagen y el ancho porque si es mas grande que el scrollbox y la arrastro hacia arriba su Top será negativo y creo que asi obtengo la parte visible de la imagen pero algo falla en mi planteamiento ¿podeis ayudarme con eso?