在ListView控件中绘底图
为了使程序的界面更美观, 我们还可以在ListView控件中绘制底图, 正如我们可以为窗口绘制底图一样. 在Delphi中, 为ListView控件绘制底图是非常容易的, 它为我们提供有OnCustomDraw事件, 专门用于处理用户自定义的绘制, 在该事件中编写程序, 可以在绘制ListView的各个项目之前, 先执行该事件程序在ListView的画布(Canvas)上绘制我们自己的图形.
下面是在ListView控件中绘底图的一个小程序, 其运行结果如下图所示(略)
源程序如下:
unit ListViewMain;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics,
Controls, Forms, Dialogs,
ComCtrls, ImgList;
type
TForm1 = class(TForm)
ListView1: TListView;
ImageList1: TImageList;
procedure ListView1CustomDraw(Sender:
TCustomListView;
const ARect: TRect; var DefaultDraw:
Boolean);
procedure FormCreate(Sender: TObject);
procedure FormClose(Sender: TObject;
var Action: TCloseAction);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
Bitmap1: TBitmap;
implementation
{$R *.DFM}
procedure TForm1.ListView1CustomDraw(Sender:
TCustomListView;
const ARect: TRect; var DefaultDraw: Boolean);
var
x,y,w,h : LongInt;
begin
with Bitmap1 do begin
W := Width;
H := Height;
end;
Y := 0;
while Y < Height do begin
X := 0;
while X < Width do begin
ListView1.Canvas.Draw(X, Y, Bitmap1);
Inc(X, W);
end;
Inc(Y, H);
end;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Bitmap1 := TBitmap.Create;
Bitmap1.LoadFromFile('backgray.bmp');
end;
procedure TForm1.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Bitmap1.Free;
end;
end.
转载于:https://www.cnblogs.com/myamanda/articles/1545357.html
在ListView控件中绘底图相关推荐
- VB.net实现从ListView控件中异地获取文本内容源代码
对于一些VB6工程代码来说,需要完成从VB到VB.net的转换,在转换过程中需要注意很多内容,利用VB.net的直接转换功能很少能完全成功,需要我们付出很大的努力. 下面的VB.net代码实现从其他应 ...
- 《如何更改其他程序ListView控件中某个Item的内容》
<如何更改其他程序ListView控件中某个Item的内容> 天津 赵春生 ××× 一:程序说明: 这次我将介绍如何更改其他程序ListView控件中某个Item的内容,关于类似的拙文我已 ...
- 如何:在 Windows 窗体 ListView 控件中启用平铺视图 【转载】
本文转载自http://msdn.microsoft.com/zh-cn/library/s8z85th0(VS.80).aspx 借助于 ListView 控件的平铺视图功能,可以在图形信息和文本信 ...
- listview显示mysql数据_C#在listview控件中显示数据库数据
一.了解listview控件的属性 view:设置为details columns:设置列 items:设置行 1.将listview的view设置为details 2.设置列属性 点击添加,添加一列 ...
- 如何设置ListView控件中的列头的颜色!
ListView默认的列头的背景太单调,缺乏个性,想变的列头的背景色! 实际上可以使用ListViewDrawColumnHeader事件自己画背景色,注意仅当 OwnerDraw 属性设置为 tru ...
- 《如何更改其他程序ListView控件中某个Item的内容》 -- 天津 赵春生
1,字符串缓冲区的作用不同:前者pItem用来接收ITEMTEXT,我们可以通过ReadProcessMemory函数来读取其内容:而在本篇中p_MyItemText则用来存放我们要设置的ITEMTE ...
- 如何判断ListView中的CheckItem项是否选中?并将所以选项从ListView控件中删除?
设置ListViw带有CheckBox foreach (ListViewItem temp_LVI in this.ListView1.CheckedItems)//用foreach()函数遍历{t ...
- vb html listview,VB中listview控件
控件 listview控件可有4种不同的视图显示方法,跟"资源管理器"里的"查看"方式相似:(1)无图标:(2)小图标:(3)列表:(4)报表式. 使用哪种视图 ...
- VB中利用ListView控件来制作表格
ListView控件是由ColumnHeader和ListItem对象所组成的,其中ColumnHeader对象的个数决定了控件的列数,而ListItem对象的个数则决定了控件的行数. 下面介绍一下L ...
最新文章
- 钰群USB3.0音视频信号采集
- 为PHP安装Memcached扩展连接Memcached
- 超牛逼的异步协程爬虫
- LintCode MySQL 1936. 张三的故事 III
- 网络打印机 RPC服务器不可用
- c#开发大全、系列文章、精品教程
- poj 2741 Colored Cubes(dfs暴力枚举)
- vs2013 win10 Caffe的编译安装(微软版本)
- warning: Clone succeeded, but checkout failed.
- AOKP接听震动PHONE.APK修改方法
- 从0到1 开启商业与未来的秘密读书笔记
- 解析 数据库 苹果自带地图
- BeanCurrentlyInCreationException异常分析及解决
- flink教程-聊聊 flink 1.11 中新的水印策略
- 怎么把两个表格的内容合并
- 机房的正确布线方法,四招轻松搞定!
- 淘宝API接口(item_sku - 获取sku详细信息)
- PMOS——用于电源开关浅析
- 201671010403 陈倩倩 实验四附加实验
- 【大学物理·早期量子论和量子力学基础】光电效应爱因斯坦的光子理论
热门文章
- 何时使用hadoop fs、hadoop dfs与hdfs dfs命令(转)
- [Android学习笔记四] 自定义Android组件之组合方式创建密码框组件
- 上一季诺基亚销售下跌28%
- 浅谈Object Pascal的指针[引用 Nicrosoft]
- Golang之不可重入函数实现
- 一个求矩阵鞍点(即行上最小的数 同时是列上最大的数)的C程序
- 第三章-电商项目-优化评论分页查询
- nginx 升级http请求到websocket
- mysqldump: Got error: 1016: Can't open file: './xxx.frm' (errno: 24) when using LOCK TABLES
- 【教你如何放大招】程序猿是如何一点点的吃下一个产品的