5D艺术网首页
商城
|
资讯
|
作品
|
博客
|
教程
|
论坛
登录
注册
加为好友
发短消息
来自:郑州
性别:先生
最后登录:2011-04-27
http://wwle.5d.cn/
我有一对翅膀,不是用来飞翔,而是用来煮汤。
首页
|
新闻
|
话题
|
博客
|
相册
|
艺术作品
|
社交关系
|
留言板
|
社交圈
2005/11/17 | ListBox1DrawItem
类别(语言类学习笔记)
|
评论
(0)
|
阅读(92)
|
发表于 18:43
procedure TfmCmnSetOption.ListBox1DrawItem(Control: TWinControl;
Index: Integer; Rect: TRect; State: TOwnerDrawState);
var
ListBox: TListBox;
Canvas: TCanvas;
ARect: TRect;
R: TRect;
Bmp: TBitmap;
begin
inherited;
if not (Control is TListBox) then Exit;
ListBox := TListBox(Control);
Bmp := TBitmap.Create;
try
Bmp.PixelFormat := pf24bit;
Bmp.Width := Rect.Right-Rect.Left;
Bmp.Height := Rect.Bottom - Rect.Top;
ARect := Bounds(0, 0, Bmp.Width, Bmp.Height);
R.Left := ARect.Left + 1;
R.Right := ARect.Right - 1;
R.Top := ARect.Top + 1;
R.Bottom := ARect.Bottom - 1;
Canvas := Bmp.Canvas;
Canvas.Font.Assign(ListBox.Font);
Canvas.Brush.Style := bsSolid;
Canvas.Brush.Color := ListBox.Color;
Canvas.FillRect(ARect);
Canvas.Brush.Color := csShadowColor;
if odSelected in State then
begin
Canvas.Brush.Color := csSelectedColor;
Canvas.Font.Color := clBlue;
end else
begin
Canvas.Brush.Color := csNormalColor;
Canvas.Font.Color := clBlack;
end;
Canvas.RoundRect(R.Left, R.Top, R.Right, R.Bottom, 1, 1);
Canvas.TextOut(R.Left + 8, 3, Format('%d¡¢%s', [index+1, ListBox.Items[Index]]));
BitBlt(ListBox.Canvas.Handle, Rect.Left, Rect.Top, Bmp.Width, Bmp.Height, Canvas.Handle, 0, 0, SRCCOPY);
finally
Bmp.Free;
end;
end;
0
评论
Comments
日志分类
首页
[289]
教程习题
[21]
数据库学习笔记
[60]
语言类学习笔记
[75]
网页类学习笔记
[93]
其他相关笔记
[40]