kapullok_2006
23-05-2007, 13:11:34
Hola, tengo un paquete llamado Package1,añadido a él los archivos:
ImgProcesado.as,ProeffectImage.pas,ImgZoom.pas.
ImgProcesado.pas tiene el sig código:
///------------------------------------------------------------------
unit ImgProcesado;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, ImageZoom, ProEffectImage;
type
TImgProcesado = class(TImage)
private
FZoom: TImageZoom;
FProcesado:TProEffectImage;
FValor_zoom: integer;
FValor_contraste: integer;
FValor_brillo: integer;
FValor_oscuridad: integer;
FValor_saturacion: integer;
FValor_mosaico: integer;
public
{ Public declarations }
{ destructor Destroy; override;
constructor Create(AOwner: TComponent); override;
}
procedure CargarFoto(foto: string);
procedure SalvarFoto(foto: string);
procedure CambiarZoom(n: integer);
procedure CambiarInvertir;
procedure CambiarAlias;
procedure CambiarContraste(n:integer);
procedure CambiarGrises;
procedure CambiarBrillo(n:integer);
procedure CambiarOscuridad(n:integer);
procedure CambiarSaturacion(n: integer);
procedure CambiarMosaico(n: integer);
published
{ Published declarations }
property Zoom: integer read FValor_zoom write CambiarZoom;
//property Invertir: integer read FValor_invertir write CambiarInvertir;
property Contraste: integer read FValor_contraste write CambiarContraste;
property Brillo: integer read FValor_brillo write CambiarBrillo;
property Oscuridad: integer read FValor_oscuridad write CambiarOscuridad;
property Saturacion: integer read FValor_saturacion write CambiarSaturacion;
property Mosaico: integer read FValor_mosaico write CambiarMosaico;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Samples', [TImgProcesado]);
end;
//---------------------------------------------------------------------------//
{constructor TImgProcesado.Create(AOwner: TComponent);
begin
//inherited Create(AOwner);
FZoom:= TImageZoom.Create(Self);
FProcesado:= TProEffectImage.Create(Self);
end;
}
{destructor TImgProcesado.Destroy;
begin
FProcesado.Free;
FZoom.Free;
//inherited Destroy;
end;
}
//---------------------------------------------------------------------------//
procedure TImgProcesado.CargarFoto(foto: string);
begin
Self.Picture.LoadFromFile(foto);
end;
procedure TImgProcesado.SalvarFoto(foto: string);
begin
Self.Picture.SaveToFile(foto);
end;
//---------------------------------------------------------------------------//
procedure TImgProcesado.CambiarZoom(n:integer);
begin
FValor_zoom:= n;
FZoom.Picture.Assign(Self.Picture);
FZoom.Zoom:= FValor_zoom;
Self.Picture.Assign(FZoom.Picture);
end;
procedure TImgProcesado.CambiarInvertir;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Invert;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarAlias;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_AntiAlias;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarContraste(n:integer);
begin
FValor_contraste:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Contrast(FValor_contraste);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarGrises;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_GrayScale;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarBrillo(n:integer);
begin
FValor_brillo:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Lightness(FValor_brillo);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarOscuridad(n:integer);
begin
FValor_oscuridad:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Darkness(FValor_oscuridad);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarSaturacion(n: integer);
begin
FValor_saturacion:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Saturation(FValor_saturacion);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarMosaico(n:integer);
begin
FValor_mosaico:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Mosaic(FValor_mosaico);
Self.Picture.Assign(FProcesado.Picture);
end;
end.
//-------------------------------------------------------------------
Este archivo .pas,debe usar propiedades de los otros .pas. ImageZoom y ProEffectImage ,aprecen en paleta 'Samples',pero no aparece ImgProcesado.
¿Sabéis cuál es el problema?.Estoy desesperado.
Es q quiero crear ese componente con propiedades y eventos de los otros dos. ImageZoom(pkgrim.zip,descargado de este foro o de alguna página recomendada de este foro) y ProEffectImage(descargado gracias a este foro).
Saludos a todos.
:( :(
ImgProcesado.as,ProeffectImage.pas,ImgZoom.pas.
ImgProcesado.pas tiene el sig código:
///------------------------------------------------------------------
unit ImgProcesado;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, ImageZoom, ProEffectImage;
type
TImgProcesado = class(TImage)
private
FZoom: TImageZoom;
FProcesado:TProEffectImage;
FValor_zoom: integer;
FValor_contraste: integer;
FValor_brillo: integer;
FValor_oscuridad: integer;
FValor_saturacion: integer;
FValor_mosaico: integer;
public
{ Public declarations }
{ destructor Destroy; override;
constructor Create(AOwner: TComponent); override;
}
procedure CargarFoto(foto: string);
procedure SalvarFoto(foto: string);
procedure CambiarZoom(n: integer);
procedure CambiarInvertir;
procedure CambiarAlias;
procedure CambiarContraste(n:integer);
procedure CambiarGrises;
procedure CambiarBrillo(n:integer);
procedure CambiarOscuridad(n:integer);
procedure CambiarSaturacion(n: integer);
procedure CambiarMosaico(n: integer);
published
{ Published declarations }
property Zoom: integer read FValor_zoom write CambiarZoom;
//property Invertir: integer read FValor_invertir write CambiarInvertir;
property Contraste: integer read FValor_contraste write CambiarContraste;
property Brillo: integer read FValor_brillo write CambiarBrillo;
property Oscuridad: integer read FValor_oscuridad write CambiarOscuridad;
property Saturacion: integer read FValor_saturacion write CambiarSaturacion;
property Mosaico: integer read FValor_mosaico write CambiarMosaico;
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Samples', [TImgProcesado]);
end;
//---------------------------------------------------------------------------//
{constructor TImgProcesado.Create(AOwner: TComponent);
begin
//inherited Create(AOwner);
FZoom:= TImageZoom.Create(Self);
FProcesado:= TProEffectImage.Create(Self);
end;
}
{destructor TImgProcesado.Destroy;
begin
FProcesado.Free;
FZoom.Free;
//inherited Destroy;
end;
}
//---------------------------------------------------------------------------//
procedure TImgProcesado.CargarFoto(foto: string);
begin
Self.Picture.LoadFromFile(foto);
end;
procedure TImgProcesado.SalvarFoto(foto: string);
begin
Self.Picture.SaveToFile(foto);
end;
//---------------------------------------------------------------------------//
procedure TImgProcesado.CambiarZoom(n:integer);
begin
FValor_zoom:= n;
FZoom.Picture.Assign(Self.Picture);
FZoom.Zoom:= FValor_zoom;
Self.Picture.Assign(FZoom.Picture);
end;
procedure TImgProcesado.CambiarInvertir;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Invert;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarAlias;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_AntiAlias;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarContraste(n:integer);
begin
FValor_contraste:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Contrast(FValor_contraste);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarGrises;
begin
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_GrayScale;
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarBrillo(n:integer);
begin
FValor_brillo:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Lightness(FValor_brillo);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarOscuridad(n:integer);
begin
FValor_oscuridad:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Darkness(FValor_oscuridad);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarSaturacion(n: integer);
begin
FValor_saturacion:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Saturation(FValor_saturacion);
Self.Picture.Assign(FProcesado.Picture);
end;
procedure TImgProcesado.CambiarMosaico(n:integer);
begin
FValor_mosaico:=n;
FProcesado.Picture.Assign(Self.Picture);
FProcesado.Effect_Mosaic(FValor_mosaico);
Self.Picture.Assign(FProcesado.Picture);
end;
end.
//-------------------------------------------------------------------
Este archivo .pas,debe usar propiedades de los otros .pas. ImageZoom y ProEffectImage ,aprecen en paleta 'Samples',pero no aparece ImgProcesado.
¿Sabéis cuál es el problema?.Estoy desesperado.
Es q quiero crear ese componente con propiedades y eventos de los otros dos. ImageZoom(pkgrim.zip,descargado de este foro o de alguna página recomendada de este foro) y ProEffectImage(descargado gracias a este foro).
Saludos a todos.
:( :(