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 07-03-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.494
Poder: 21
MAXIUM Va camino a la fama
Exclamation Evento onChange en TImage

Cuando cambie la imagen en un TImage, necesito que haga algo. ¿Cual sería el código?
Responder Con Cita
  #2  
Antiguo 07-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Poder: 15
BrunoBsso Va por buen camino
Se me ocurre que podrías hacer tu propio procedimiento que haga algo, y cada vez que modifiques la imagen (porque el usuario es el que modifica la imagen) llames a ese procedimiento.
Código Delphi [-]
//un procedimiento creado por vos
procedure OnChangeImagen(Argumentos_que_quieras);
begin
  //hacé lo que necesites
end;

//OnClick de un botón cualquiera
Image1.Picture.Bitmap.LoadFromFile(RutaArchivo);
//también cuando hagas Image1.Picture.Bitmap.Assign(Argumento); que se usa para asignar otra imagen ya cargada
OnChangeImagen(Argumentos_necesarios);
Saludos!
Responder Con Cita
  #3  
Antiguo 08-03-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.494
Poder: 21
MAXIUM Va camino a la fama
Más ideas por favor.

Como usar el procedimiento OnChange, este evento si existe, pero no me aparece en el inspector de objetos y no se como se hace la declaración

Image1.Picture.OnChange(Sender: TObject)
Responder Con Cita
  #4  
Antiguo 08-03-2010
BrunoBsso BrunoBsso is offline
Miembro
 
Registrado: nov 2009
Ubicación: Berisso, Buenos Aires, Argentina
Posts: 239
Poder: 15
BrunoBsso Va por buen camino
Lightbulb

Bueno, entonces tendrías que crear algún procedimiento llamado OnChangeImg(Sender:TObject).
Acá te dejo un ejemplo, vos después modificalo a tu gusto.
Código Delphi [-]
type
  TForm1 = class(TForm)
    Image1: TImage;
    Button1: TButton;
    procedure FormCreate(Sender: TObject);
    procedure Button1Click(Sender: TObject);
    procedure OnChangeImg(Sender:TObject); //Tu propio OnChange
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.OnChangeImg(Sender:TObject);
//Este PROC tiene que estar declarado en el form que lo use
begin
  Self.Refresh; //Si no refrescas, no carga la imagen
  ShowMessage('La imagen cambió.');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  Image1.Picture.Bitmap.LoadFromFile('Una imagen cualquiera');
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
  //Asigno el OnChangeImg a Image1.Picture.Bitmap.OnChange
  Image1.Picture.Bitmap.OnChange:=OnChangeImg;
  {Si lo asignas a Image1.Picture.OnChange, llama dos veces al evento (una porque cambia la propiedad Picture y otra porque cambia la propiedad Bitmap)}
end;

Saludos!
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Emular con cxCurrencyEdit evento OnChange de un TEdit. ¿ Alguien sabe ? calogero Varios 4 06-06-2007 22:24:56
evento onchange de un dbedit ercrizeporta Varios 1 31-10-2006 15:09:38
Problemas con ClientDataSet evento OnChange jmlifi Varios 2 30-10-2006 10:42:49
OnChange en TListBox fedecm Varios 1 30-06-2004 18:24:32


La franja horaria es GMT +2. Ahora son las 01:11:20.


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