mira ecfisa... yo lo estoy haciendo asi de esta manera para controlar los desplazamientos del Scrollbox
moveticks y paginas son variables int globales
al principio pongo el cursor del raton encima de las barras del Scrollbox para que actualice inmediatamente si se produce la condicion
el área de visualizacion en pantalla de la imagen es de unos 960x290 pixeles asi que si quiero ver mas imagen es cuando hago esto en el Form1 evento KeyDown
Código PHP:
SetCursorPos(20, 325);
switch(Key)
{
case VK_UP:
moveticks_y -= 1;
if(moveticks_y < 0) moveticks_y = 0;
if(ceil(moveticks_y / 8) > 1)
{
sScrollBox1->VertScrollBar->Position = 290 * pagina_y;
}
else { sScrollBox1->VertScrollBar->Position = 0; }
//ShowMessage("UP");
break;
case VK_DOWN:
moveticks_y += 1;
if(moveticks_y > Image1->Height / 32) moveticks_y = Image1->Height / 32;
if(ceil(moveticks_y / 8) > 1)
{
sScrollBox1->VertScrollBar->Position = 290 * pagina_y;
}
else { sScrollBox1->VertScrollBar->Position = 0; }
//ShowMessage("DOWN");
break;
case VK_LEFT:
moveticks_x -= 1;
if(moveticks_x < 0) moveticks_x = 0;
if(ceil(moveticks_x / 29) > 1)
{
sScrollBox1->VertScrollBar->Position = 960 * pagina_x;
}
else { sScrollBox1->VertScrollBar->Position = 0; }
//ShowMessage("LEFT");
break;
case VK_RIGHT:
moveticks_x += 1;
if(moveticks_y > Image1->Width / 32) moveticks_y = Image1->Width / 32;
if(ceil(moveticks_x / 29) > 1)
{
sScrollBox1->VertScrollBar->Position = 960 * pagina_x;
}
else { sScrollBox1->VertScrollBar->Position = 0; }
//ShowMessage("RIGHT");
break;
}