Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros entornos y lenguajes > C++ Builder
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #2  
Antiguo 28-03-2017
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 38
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Contestando al título, para centrar un TImage en un TScrollBox podes hacer:
Código PHP:
...
  
Image->Left = ( ScrollBox->Width  - 2 - Image->Width  ) / 2;
  
Image->Top  = ( ScrollBox->Height - 2 - Image->Height ) / 2; 
Y si entendí bién la consulta del mensaje, lo haría al modo de este ejemplo:
Código PHP:
// (valores a tu gusto)
TPoint pos = (Point)( 1, 1);
int inc    = 10;

void __fastcall TForm1::FormCreate(TObject *Sender)
{
  
Image2->Left = pos.x;
  
Image2->Top  = pos.y;
}

void __fastcall TForm1::FormKeyDown(TObject *Sender, WORD &Key,
      
TShiftState Shift)
{
  
TRect sbr = ScrollBox1->ClientRect; // rect. cliente

  // tratamiento de teclas
  
switch ( Key ) {
   case 
VK_LEFT  : pos.x -= inc; break;
   case 
VK_RIGHT : pos.x += inc; break;
   case 
VK_UP    : pos.y -= inc; break;
   case 
VK_DOWN  : pos.y += inc; break;
  }

  
// desplazamiento horizontal
  
if ( pos.x < 0 ) {
    
ScrollBox1->ScrollBy( inc, 0 );
    
pos.x = 0;
  }

  if ( 
pos.x + Image2->Width > sbr.right ) {
    
ScrollBox1->ScrollBy( -inc, 0 );
    
pos.x = sbr.right - GetSystemMetrics( SM_CXHSCROLL ) + 2;
  }

  
// desplazamiento vertical
  
if ( pos.y < 0) {
    
ScrollBox1->ScrollBy( 0, inc );
    
pos.y = 0;
  }

  if ( 
pos.y + Image2->Height > sbr.bottom ) {
    
ScrollBox1->ScrollBy( 0, -inc );
    
pos.y = sbr.Bottom - GetSystemMetrics( SM_CXVSCROLL ) + 2;
  }

  
Image2->Left = pos.x;
  
Image2->Top  = pos.y;
} 
Resultado:



Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
centrar timage en una form JXJ Varios 4 05-10-2017 23:51:30
Ajustar (Stretch) & Centrar Imagen En TImage Dentro de ScrollBox Beaker_ Gráficos 3 22-05-2012 17:36:57
Como centrar una imagen en un timage con un click The_Duke Gráficos 3 24-11-2008 02:07:03
Mover un TImage por la pantalla islu Gráficos 0 01-09-2004 14:00:54
Centrar en pantalla Gorehide Varios 3 09-07-2004 11:59:28


La franja horaria es GMT +2. Ahora son las 05:36:40.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi