Info Delphi

La magia de la programación a tu alcance

Ventanas deslizantes

Hola a todos,

hoy vamos aver un pequeño truco que puede resultar muy aparente para tus aplicaciones, las ventanas deslizantes.

Crea una nueva aplicación con dos formularios, o selecciona alguna que ya tengas preparada, selecciona el formulario que quieres deslizar y cambia su posición en alguna de las propiedades Top o Left, según quieras que la ventana se mueva de forma vertical  o se desplace de forma lateral, de manera que quede fuera de los margenes de la pantalla.

Vamos a escribir el código que desplazará la pantalla, para ello debes agregar un botón o una opción de menu en el primer formulario y escribir en su evento Click.

{Vamos a desplazar el formulario para que se desplace
hacia el centro de la pantalla, apareciendo por la derecha}
procedure TForm1.Dentro1Click(Sender: TObject);
var
  Posicion: integer;
begin
  {Colocamos el formulario a desplazar encima de todos los demás}
  Form2.FormStyle:= fsStayOnTop;
  {Y lo mostramos}
  Form2.show;
  {Recuperamos la posición actual del formulario
  y calculamos el centro de la pantalla}
  for posicion:= Form2.Left downto (Screen.width -Form2.Width) div 2 do begin
    {Desplazamos el formulario}
    Form2.Left:= posicion;
    {Colocamos un retardo para que no parpadee}
    sleep(10);
  end;
end;

(Nota: Si quieres que aparezca desde la parte izquierda de la pantalla, deberás cambiar downto por to)

Ahora vamos a hacer desaparecer el formulario de la misma forma.

{Procedimiento que en vez de cerrar el formulario
hara que desaparezca por la derecha de la pantalla}
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
var
  Posicion:  integer;
begin
  {Recuperamos la posición actual del formulario y
  calculamos el punto máximo de la pantalla}
  for posicion:= Form2.Left to Screen.width + 10 do begin
    {Desplazamos el formulario}
    Form2.Left:= posicion;
    {Colocamos un retardo para que no parpadee}
    sleep(10);
  end;
end;

(Nota: Si quieres que desaparezca por la parte izquierda de la pantalla, deberás cambiar to por downto y usar la propiedad Form2.width cambiandola a signo negativo)

Si deseas que el formulario se desplace de forma vertical, debes utilizar la propiedad Top en las rutinas.

Saludos

Anuncios

Jueves, 15 enero 2009 - Posted by | Delphi

Aún no hay comentarios.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: