Einzelnen Beitrag anzeigen

Faber

Registriert seit: 10. Okt 2003
7 Beiträge
 
#1

Komische Fehlermeldung EConvertError

  Alt 12. Mai 2004, 11:00
Ich habe eine Komponente geschrieben,
die einfacher nicht sein kann:

Delphi-Quellcode:
unit BitmapComp;


interface

uses
  Windows, Messages, SysUtils, Classes, Graphics, Dialogs;

type
  TBitmapComp = class(TComponent)
  private
    { Private-Deklarationen }
    fChange : TNotifyEvent; { Custom Event }
  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    FBitmap : TBitmap;
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
    Procedure SetBitmap(Const ABmp : TBitmap);

  published
    { Published-Deklarationen }
    Procedure HasChanged;
    property Bitmap : TBitmap Read FBitmap Write SetBitmap;
    property OnChangeState : TNotifyEvent read fChange write fChange;
  end;

procedure Register;

implementation

Constructor TBitmapComp.Create(AOwner: TComponent);
Begin
  inherited Create(AOwner);
  FBitmap := TBitmap.Create;
End;

Destructor TBitmapComp.Destroy;
Begin
  FBitmap.Free;
  inherited Destroy;
End;

Procedure TBitmapComp.SetBitmap(Const ABmp : TBitmap);
Begin
  FBitmap.Canvas.Assign(ABmp.Canvas);
  HasChanged;
End;

Procedure TBitmapComp.HasChanged;
Begin
  if Assigned(fChange) then OnChangeState(Self);
End;

procedure Register;
begin
  RegisterComponents('Faber', [TBitmapComp]);
end;

end.

Wenn ich nun aus einem anderen Programm ein Bitmap übergebe,
bekomme ich folgende Fehlermeldung an dieser Stelle:

Procedure TBitmapComp.SetBitmap(Const ABmp : TBitmap);
Begin
  FBitmap.Canvas.Assign(ABmp.Canvas);
""""""""""""""""""""""""""""""""""""""""" EConvertError TBitmap kann nicht TBitmap zugewiesen werden...
  HasChanged;
End;
Kann mir da jemand weiterhelfen????

So übergebe ich das Bitmap:

Delphi-Quellcode:
procedure TPluginScanner.TwainTwainAcquire(Sender: TObject;
  const Index: Integer; Image: TBitmap; var Cancel: Boolean);
begin
  BitmapComp.Bitmap := Image;
  Cancel := TRUE; {Only want one image}
end;
Danke schon mal !!!

[edit=sakura] [delphi]tags Mfg, sakura[/edit]
  Mit Zitat antworten Zitat