16番会議室「玉石混淆みんなで作るSample蔵」に寄せられたサンプル
"標準的なボタン画像を得るコンポーネント"
この発言に対し以下のコメントが寄せられています
#00712 ぜえた さん RE:標準的なボタン画像を得るコンポーネン
こんにちは、ぜえた です。
標準的なボタン画像を取り出すコンポーネントです。
TCustomImageList から派生させてます。
設計中に画像を見たいなら TImageList から派生させればコンポーネントエディタ
から見ることができます。でもプロパティをいじくると不具合を起こします(^^;
その解消とか、大きなアイコンも得るとか、自分で作ったアイコンも入れるとかは、
各人で研究してください。
unit CommImg;
interface
uses
Windows, SysUtils, Classes, Controls, CommCtrl;
type
TCommImageList = class(TImageList)
protected
procedure DefineProperties(Filer: TFiler); override;
procedure LoadImage;
public
constructor Create(AOwner: TComponent); override;
end;
procedure Register;
implementation
constructor TCommImageList.Create(AOwner: TComponent); //override;
begin
inherited;
if csDesigning in ComponentState then LoadImage;
end;
procedure TCommImageList.DefineProperties(Filer: TFiler); //override;
begin
Clear;
try
inherited DefineProperties(Filer);
finally
LoadImage;
end;
end;
procedure TCommImageList.LoadImage;
var
hInst: HModule;
procedure Add(ResID: Integer);
var
hBmp: HBitmap;
begin
hBmp := LoadBitmap(hInst, PChar(ResID));
ImageList_AddMasked(Handle, hBmp, CLR_DEFAULT);
DeleteObject(hBmp);
end;
begin
hInst := GetModuleHandle('comctl32.dll');
Add(124);
Add(120);
Add(130);
end;
procedure Register;
begin
RegisterComponents('Samples', [TCommImageList]);
end;
end.
ぜえた (QZC05100)
Original document by ぜえた 氏 ID:(QZC05100)
ここにあるドキュメントは NIFTY SERVEの Delphi Users' Forum の16番会議室「玉石混淆みんなで作るSample蔵」に投稿されたサンプルです。これらのサンプルはボーランド株式会社がサポートする公式のものではありません。また、必ずしも動作が検証されているものではありません。これらのサンプルを使用したことに起因するいかなる損害も投稿者、およびフォーラムスタッフはその責めを負いません。使用者のリスクの範疇でご使用下さい。
Copyright 1996-2002 Delphi Users' Forum
|