Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Gráficos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 29-11-2005
Mr.Vaka Mr.Vaka is offline
Miembro
 
Registrado: nov 2005
Posts: 18
Poder: 0
Mr.Vaka Va por buen camino
Al borrar un Timage me da error

Estoy intentando de hacer este truco, de extraer el icono de un archivo a un Timage, el problema es que si uso el truco varias veces seguidas no se borra el icono anterior que había en el Timage y me pone uno encima y se ven varios iconos al principio del codigo intento poner image1.free; pero me da error, como puedo areglar.

Espero que me aiga explicado bien saludos.

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  Icono:TIcon;
  Indice:word;
begin
  {borro la imagen}
  Image1.free;
  Icono:=TIcon.Create;
  {Indice del icono a extraer}
  {Icon Index to extract}
  Indice:=0;
  Icono.handle:=ExtractAssociatedIcon(hInstance,Pchar('c:\kk\dlib.zip'),Indice);
  Image1.Picture.Bitmap.Width:= Icono.Width;
  Image1.Picture.Bitmap.Height:= Icono.Height;
  Image1.Picture.Bitmap.Canvas.Draw(0,0,Icono);
  Icono.Free;
end;

Última edición por dec fecha: 29-11-2005 a las 15:23:20. Razón: ¡¡Encerrad el código fuente entre las etiquetas [DELPHI] ... [/DELPHI]!!
Responder Con Cita
  #2  
Antiguo 29-11-2005
Avatar de epuigdef
epuigdef epuigdef is offline
Miembro
 
Registrado: jul 2005
Posts: 196
Poder: 19
epuigdef Va por buen camino
Si utilizas el free del image1 lo estás eliminando de la memoria, debes utilizar el método clear, pero no sé si está a nivel de image1.clear, o image1.picture.clear, o image1.picture.bitmap.clear.

No tengo el Delphi a mano, pruebalo tu mismo.

Edu
Responder Con Cita
  #3  
Antiguo 29-11-2005
Mr.Vaka Mr.Vaka is offline
Miembro
 
Registrado: nov 2005
Posts: 18
Poder: 0
Mr.Vaka Va por buen camino
No existe el clear en un timage
Responder Con Cita
  #4  
Antiguo 29-11-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Hazlo así:

Código Delphi [-]
Image1.Picture := nil;
O (puesto que no estoy seguro ahora y no recuerdo y no puedo probarlo) de este otro modo:

Código Delphi [-]
Image1.Picture.Bitmap := nil;
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 29-11-2005
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Quizás buscas algo como:
Código Delphi [-]
 image1.Picture.Assign(nil);

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #6  
Antiguo 29-11-2005
Mr.Vaka Mr.Vaka is offline
Miembro
 
Registrado: nov 2005
Posts: 18
Poder: 0
Mr.Vaka Va por buen camino
Funciona perfectamente, muchas gracias!!!
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 23:19:59.


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
Copyright 1996-2007 Club Delphi