PDA

Ver la Versión Completa : Uso de imagenes


deimonio
12-10-2003, 22:28:07
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:

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.