Einzelnen Beitrag anzeigen

Benutzerbild von FriFra
FriFra

Registriert seit: 19. Apr 2003
1.291 Beiträge
 
Delphi 2005 Professional
 
#1

Resourcen in Komponente...

  Alt 21. Jan 2004, 13:20
Ich habe eine Resource in eine Komponente eingebunden, bekomme aber beim erzeugen eines Objektes immer eine Fehlermeldung, dass die bettr. Resource nicht vorhanden sei.

Wo könnte der Fehler sein? Die Resource ist jedenfalls definitiv vorhanen!
Delphi-Quellcode:
unit Fr_LocalMailListView;

interface

uses
  SysUtils, Classes, Controls, ComCtrls, Graphics, Windows, Fr_LocalMail;

type
  TFr_LocalMailListView = class(TListView)
  private
    { Private-Deklarationen }

    ...

  protected
    { Protected-Deklarationen }
  public
    { Public-Deklarationen }
    constructor Create(AOwner: TComponent); override;
    destructor Destroy; override;
  published
    { Published-Deklarationen }

    ...

  end;

procedure Register;

implementation

  {$R res/ImageList.res}

procedure Register;
begin
  RegisterComponents('FriFra', [TFr_LocalMailListView]);
end;

constructor TFr_LocalMailListView.Create(AOwner: TComponent);
var
  RS: TResourceStream;
  bmp: Graphics.TBitmap;
  n: integer;
begin
  inherited;
  RS := nil;
  LocalMail := TFr_LocalMail.Create(nil);
  SmallIcons := TImageList.CreateSize(16, 16);
  LargeIcons := TImageList.CreateSize(32, 32);
  bmp := Graphics.TBitmap.Create;
  try
    for n := 0 to 6 do
    begin
      try
        RS := TResourceStream.Create(0, 'Large' + IntToStr(n), RT_RCDATA);
        RS.Position := 0;
        bmp.LoadFromStream(RS);
        LargeIcons.AddMasked(bmp, clFuchsia);
      finally
        RS.Free;
      end;
      try
        RS := TResourceStream.Create(0, 'Small' + IntToStr(n), RT_RCDATA);
        RS.Position := 0;
        bmp.LoadFromStream(RS);
        SmallIcons.AddMasked(bmp, clFuchsia);
      finally
        RS.Free;
      end;
    end;
  finally
    bmp.Free;
  end;
  LargeImages:=LargeIcons;
  SmallImages:=LargeIcons;
  SetDefaults;
end;

destructor TFr_LocalMailListView.Destroy;
begin
  LocalMail.Free;
  SmallIcons.Free;
  LargeIcons.Free;
  inherited;
end;

...

end.
Imagelist.rc
Code:
Large0 RCDATA EU_L.bmp
Large1 RCDATA LN_L.bmp
Large2 RCDATA NS_L.bmp
Large3 RCDATA OP_L.bmp
Large4 RCDATA OL_L.bmp
Large5 RCDATA PG_L.bmp
Large6 RCDATA TB_L.bmp
Small0 RCDATA EU_S.bmp
Small1 RCDATA LN_S.bmp
Small2 RCDATA NS_S.bmp
Small3 RCDATA OP_S.bmp
Small4 RCDATA OL_S.bmp
Small5 RCDATA PG_S.bmp
Small6 RCDATA TB_S.bmp
Elektronische Bauelemente funktionieren mit Rauch. Kommt der Rauch raus, geht das Bauteil nicht mehr.
  Mit Zitat antworten Zitat