颜色列表转换到图形列表颜色列表转换到图形列表
(*//
标题:颜色列表转换到图形列表
说明:用于利用菜单选择颜色
设计:Zswang
日期:2002-03-31
支持:wjhu111@21cn.com
//*)
///////源代码开始
function ColorsToImageList(mColors: array of TColor;
mImageList: TImageList; mAppend: Boolean = False): Boolean;
{ 将颜色列表转换到图形列表中 }
var
I: Integer...
颜色列
转换到图形列表
(*//
标
:颜色列表转换到图形列表
说明:用于利用菜单选择颜色
设计:Zswang
日期:2002-03-31
支持:wjhu111@21cn.com
//*)
///////源代码开始
function ColorsToImageList(mColors: array of TColor;
mImageList: TImageList; mAppend: Boolean = False): Boolean;
{ 将颜色列表转换到图形列表中 }
var
I: Integer;
vBitmap: TBitmap;
begin
Result := False;
if not Assigned(mImageList) then Exit;
if not mAppend then mImageList.Clear;
vBitmap := TBitmap.Create;
try
vBitmap.Height := mImageList.Height;
vBitmap.Width := mImageList.Width;
for I := Low(mColors) to High(mColors) do begin
vBitmap.Canvas.Pen.Color := mColors[I];
vBitmap.Canvas.Brush.Color := mColors[I];
vBitmap.Canvas.FillRect(Rect(0, 0, vBitmap.Width,
vBitmap.Height));
mImageList.Add(vBitmap, nil);
end;
finally
vBitmap.Free;
end;
Result := True;
end; { ColorsToImageList }
///////源代码结束
///////使用示例开始
procedure TForm1.FormCreate(Sender: TObject); var
vMenuItem: TMenuItem;
vColor: TColor;
I: Integer;
begin
Randomize;
PopupMenu := PopupMenu1;
PopupMenu1.Images := ImageList1;
for I := 1 to 10 do begin
vColor := RGB(Random(256), Random(256), Random(256));
vMenuItem := TMenuItem.Create(Self);
vMenuItem.Caption := ColorToString(vColor);
vMenuItem.ImageIndex := ImageList1.Count;
vMenuItem.OnClick := MenuItemClick;
ColorsToImageList([vColor], ImageList1, True);
PopupMenu1.Items.Add(vMenuItem);
end;
end;
procedure TForm1.MenuItemClick(Sender: TObject); begin
Color := StringToColor(StripHotkey(TMenuItem(Sender).Caption));
end;
///////使用示例结束
本文档为【颜色列表转换到图形列表】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。