Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Uso de imagenes (https://www.clubdelphi.com/foros/showthread.php?t=4346)

deimonio 12-10-2003 22:28:07

Uso de imagenes
 
Estoy de nuevo con otra pregunta, jajaja Alguein tiene idea de como poner una imagen de fondo a un programa ? ya que usando el TIMAGE el programa al moverlo se me traba todo, si hay algun componenet o alguna manera de manejarlo ? gracias

marcoszorrilla 13-10-2003 08:15:05

Por lo que se desprende de la pregunta, puede ser que con esta información te sirva:

Basta con que lo 'pintemos' en el evento OnPaint de la form

La idea es la siguiente:

Definir una variable TBitmap global a toda la form, en donde cargaremos la imagen a poner como fondo, es decir, la definimos en el var de la form:

var
Form1: TForm1;
Fondo:TBitmap;


En el evento OnCreate de la form, inicializamos nuestra variable y cargamos en ella el bitmap:

Código:

        procedure TForm1.FormCreate(Sender: TObject);
        begin
          {Creamoa la variable}
          {Create our bitmap variable}
          Fondo := TBitmap.Create;
          {Cargamos en ella una imagen}
          {Load a image file into our bitmap}
          Fondo.LoadFromFile('c:\kk\q3.bmp');
        end;

  Y en el evento OnPaint, 'rellenaremos' el fondo de la form con nuestro bitmap:

        procedure TForm1.FormPaint(Sender: TObject);
        var
          filas,columnas : Integer;
        begin

          for filas:=0 to Trunc(Height/Fondo.Height) do
            for columnas:=0 to Trunc(Width/Fondo.Width) do
              Canvas.Draw(columnas*Fondo.Width,
                          filas*Fondo.Height,
                          Fondo);
        end;


Para finalizar, antes de salir, debemos liberar nuestra variable Bitmap, así que lo
haremos en el evento OnDestroy de la form:

        procedure TForm1.FormDestroy(Sender: TObject);
        begin
          {Liberamos el bitmap}
          {Free our bitmap}
          Fondo.Free;
        end;

Un Saludo.


La franja horaria es GMT +2. Ahora son las 21:54:51.

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