首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Delphi:如何在CustomDrawItem的List View中绘制小图标

在Delphi中,要在CustomDrawItem的List View中绘制小图标,您需要使用以下步骤:

  1. 首先,在List View的属性中,将ViewStyle属性设置为vsReport。这将允许您在列表项中添加图标。
  2. 在List View的属性中,将SmallImages属性设置为您的图像列表。这通常是一个TImageList组件,其中包含了您要在列表项中显示的图标。
  3. 在List View的OnCustomDrawItem事件中,您可以使用以下代码来绘制图标:
代码语言:txt
复制
procedure TForm1.ListView1CustomDrawItem(Sender: TCustomListView;
  Item: TListItem; State: TCustomDrawState; var DefaultDraw: Boolean);
begin
  // 在这里,我们将图标绘制在列表项的第一列
  // 您可以根据需要更改列的索引
  Item.DrawIcon(Canvas, Item.SubItems[0], 2, 2);
end;

在上面的代码中,我们使用了DrawIcon方法来绘制图标。这个方法需要一个Canvas对象,一个图标索引,以及图标的左上角位置。

  1. 最后,在List View的OnData事件中,您需要将图标索引添加到列表项的SubItems中。这将使您能够在CustomDrawItem事件中访问它。
代码语言:txt
复制
procedure TForm1.ListView1Data(Sender: TObject; Item: TListItem);
begin
  // 在这里,我们假设您有一个TImageList组件,其中包含了图标
  // 您可以根据需要更改ImageList1的名称
  Item.ImageIndex := ImageList1.AddIcon(Application.Icon);
  Item.SubItems.Add(IntToStr(Item.ImageIndex));
end;

在上面的代码中,我们使用了Data事件来添加图标索引到列表项的SubItems中。我们假设您已经有了一个包含图标的TImageList组件,并使用了Application.Icon作为图标。您可以根据需要更改ImageList1的名称和添加图标的方式。

现在,当您运行应用程序时,您应该能够在List View中看到带有小图标的列表项。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

网易考拉 Android 通知栏适配全方案

通过设置样式,可以展示更大区域通知消息,展示大图和多行文字,也可以展示类似邮箱收发信样式,同时支持自定义按钮并增加点击事件。...下面解决一个最关键,也最致命问题——字体颜色。如果字体颜色和背景颜色一样,那这条通知栏消息就没法看了,RemoteViews显示异常一节介绍一样。...) { if (view == null) { return INVALID_COLOR; } List textViews = getAllTextViews...* * @param root 根节点 * @return 包含TextView集合 */ private static List getAllTextViews(View root...现在Google要求,所有应用程序通知栏图标,应该只使用alpha图层来进行绘制,而不应该包括RGB图层。通俗点来讲,就是让我们通知栏图标不要带颜色就可以了^13。

5.1K11

轮播图-滑动图片标题焦点

谷歌提供v4包,ViewPager 在布局文件,先添加控件,这个只是轮播区域 在布局文件,布置标题描述部分 线性布局,竖向排列...是ll_points在代码对其进行填充 获取ViewPager对象 调用ViewPager对象setAdapter()方法,参数:PagerAdapter对象 因为PagerAdapter是抽象类,...()方法,将当前view对象添加到ViewGroup对象,返回当前对象 重写destroyItem()方法,从当前container删除指定位置(position)View 切换描述标题字符串 定义一个...,给小图标ImageView对象添加一些margin值,参数:LayoutParams对象,获取LinearLayout.LayoutParams对象,调用LayoutParams对象rightMargin....view.PagerAdapter; import android.support.v4.view.ViewPager; import android.support.v4.view.ViewPager.OnPageChangeListener

2.7K10
  • 带你快速掌握Flutter视图(Widgets)

    通过这篇文章学习,将为你揭开这些答案。 谁是FlutterView? 在AndroidView是屏幕上显示所有内容基础, 按钮、工具栏、输入框等一切都是View。...在Flutter,您可以使用Widgets库核心布局小部件 Container, Column, Row, 和 Center,关于Widget更多内容可参考:Layout Widgets目录...另外推荐大家在widget catalog查看 Flutter提供布局。 如何在布局添加或删除组件?...要了解如何在Flutter实现签名Painter,可参阅Collin在StackOverflow上答案。 ?...在Android,可以通过继承View或已经存在某个控件,然后覆盖其绘制方法来实现自定义View; 在iOS,可以通过编写 UIView 子类,或使用已经存在 view 来重载并实现方法,以达到特定功能

    11K10

    CListCtrl详细使用方法

    以下未经说明,listctrl默认view 风格为report 相关类及处理函数 MFC:CListCtrl类 SDK:以 “ListView_”开头一些宏。... ListView_InsertColumn CListCtrl 风格 LVS_ICON: 为每个item显示大图标 LVS_SMALLICON: 为每个item显示小图标 LVS_LIST...: 显示一列带有小图标的item LVS_REPORT: 显示item详细资料 直观理解:windows资源管理器,“查看”标签下“大图标,小图标,列表,详细资料” 设置listctrl 风格及扩展风格...(0, “11”);//插入行 m_list.SetItemText(nRow, 1, “jacky”);//设置数据 一直选中item 选中styleShow selection always...控件item内容 http://www.codeproject.com/threads/int64_memsteal.asp 选中listviewitem Q131284: How To

    1.1K20

    Python-matplotlib 商业图表绘制第3弹

    本篇推文为python-matplotlib 商业图表绘制第三篇文章,主要内容为圆润柱状图绘制,这也是我之前一直想做事情,在浏览Matplotlib官网时,发现了一个方法,就试着进行绘制,效果还不错...(2)多重圆绘制 for x,y,z in zip(artist_03['index'].to_list(),artist_03['data'].to_list(),text_l): ax.plot...(3) ax.plot()绘制线段 这里使用了ax.plot()方法绘制了另类线段,不仅可以设置线段类型,对线段始末形状也可以进行定制设计,代码如下: #绘制空心圆线段 ax.plot([.36,5.64...后面打算给每个柱状图上添加矢量小图标,增强每个柱状图个性化属性,也在探索过程,如果小伙伴们需要,后期推文会进行讲解。 04....适量小图标的添加如果大家需求较多,我会出推文进行讲解,当然,大家也可以后台留言或者直接进群讨论哦

    35351

    CListCtrl使用「建议收藏」

    : •LVS_ICON LVS_SMALLICON LVS_LIST LVS_REPORT 这四种风格决定控件外观,同时只可以选择其中一种,分别对应:大图标显示,小图标显示,列表显示,详细报表显示...通过itemiItem,iSubItem可以知道当前显示为那一项。... ListView_InsertColumn ---- CListCtrl 风格 LVS_ICON: 为每个item显示大图标 LVS_SMALLICON: 为每个item显示小图标 LVS_LIST...: 显示一列带有小图标的item LVS_REPORT: 显示item详细资料 直观理解:windows资源管理器,“查看”标签下“大图标,小图标,列表,详细资料” ---- 设置listctrl...(根据自己需要样式选择) LVS_ICON: 为每个item显示大图标 LVS_SMALLICON: 为每个item显示小图标 LVS_LIST: 显示一列带有小图标的item LVS_REPORT

    1.1K20

    Delphi入门教程

    Delphi定义类一般均以大写字母”T”开头,窗体TForm 2.组件(Component):Delphi常规应用程序开发基础,类似于积木作用。实际上是一个完成一定功能类。...因此,在Delphi对象就是组件实例(运行期组件) 4.属性(Property):对象静态属性,表示状态信息 5.方法(Method):对象动态属性,表示对象能够执行功能。...事件可能是用户执行了某些操作(鼠标单击、敲击键盘等)引起,也可能是程序内部触发定时器) 7.事件处理程序(Event Handler):当事件触发时,应用程序执行命令集。...【View】菜单 主要用于显示、进入、隐藏各类窗口。...【Add to Project】:将各种Delphi6支持文件加入当前项目 【Remove from Project】:将指定文件从项目中移走 【View Source】:查看项目文件源代码 【Compile

    7K20

    关于写作那些事之利用 js 统计各大博客阅读量

    在日常文章数据统计过程,纯手动方式已经难以应付,于是乎,逐步开始了程序介入方式进行统计....在这三步操作,第一步复制文章内容最简单,第二步整理文章格式最麻烦,第三步编写 csv 工具类最技术. 因此,能不能再简单点?懒癌晚期,必须继续寻求新解决方案....所以,还是先看看文档结构,尝试着直接定位到全部阅读量小图标. ? 经过分析文章结构,我们可以很轻松定位到全部阅读小图标,当然这是一个元素数组,并不是字符串数组哟!...$("#list-container .ic-list-read") 接下来我们看一下能否正确定位到每一个小图标,进而定位到小图标左侧阅读量. ?...现在我们已经能够定位到全部阅读量小图标,现在思考如何定位到旁边真正阅读量呢?

    49940

    Python-matplotlib 商业图表绘制03

    引言 本篇推文为python-matplotlib 商业图表绘制第三篇文章,主要内容为圆润柱状图绘制,这也是我之前一直想做事情,在浏览Matplotlib官网时,发现了一个方法,就试着进行绘制...(2)多重圆绘制 for x,y,z in zip(artist_03['index'].to_list(),artist_03['data'].to_list(),text_l): ax.plot...(3) ax.plot()绘制线段 这里使用了ax.plot()方法绘制了另类线段,不仅可以设置线段类型,对线段始末形状也可以进行定制设计,代码如下: #绘制空心圆线段 ax.plot([.36,5.64...后面打算给每个柱状图上添加矢量小图标,增强每个柱状图个性化属性,也在探索过程,如果小伙伴们需要,后期推文会进行讲解。 04....适量小图标的添加如果大家需求较多,我会出推文进行讲解,当然,大家也可以后台留言或者直接进群讨论哦

    55610

    Android 通过layer-list 实现View 阴影效果

    1.介绍 主要介绍如何在res文件夹drawableView布局添加上阴影效果。那么我们通过shape进行绘制带阴影布局有哪些优缺点和使用场景呢? 我们可以调整阴影高度和颜色。...我们可以调整阴影显示位置(上,下,左,右)。 全版本通用,使用简单。 不用修改View代码,只需要添加背景。 修改灵活,支持圆角 2. 实现 示例:我们希望在View顶部出现阴影 <?...但是,这种调整完毕要注意color值透明 在上面的示例,top代表了布局顶部间距。所以我们阴影绘制在了顶部。我们还可以设置:bottom,right,left,top。...2.1 距离 我们创建完毕后布局View可能会显示在阴影区域,这需要我们主动将阴影区域高度给空出来。 那么这个高度是多少呢?是我们每个itempadding 累加。...如果你不喜欢卡片布局CardView,那么也许使用layer-list 是一个很不错选择。 其他 关于布局其他配置可以参考下面的内容。

    67520

    Delphi考虑sql注入 QuotedStr

    大家好,又见面了,我是你们朋友全栈君。...之前只在BS架构项目中考虑了Sql注入问题,却很少考虑到用了多年Delphi项目也应该考虑Sql注入问题,今天做了个实验,成功完成注入,把表里数据全部删除,以后再做Delphi项目还真的考虑这个问题...总体讲,大体知道有两种方式可以避免DelphiSql注入:1、用QuotedStr替代”’进行字符串拼接;2、采用传参数方式与数据库交互,这种方式哪天再仔细体验一下。...tb1表之前数据将全部清除,只剩下insert into tb1(Id, Name) values(123, ‘xxxx 添加一条 [delphi] view plain copy procedure...发现本站有涉嫌侵权/违法违规内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    36620

    七天速成小程序——喜马拉雅

    ,新手建议纯手写,实在无法写出可采用部分框架样式):@WEUI 项目分析列表 在这个例子,我们只分析其中一个小小模块:基本页面及其简单功能。... class="history"> class="list list-bottom"> <view< span...是不是发现了什么,没错,底部线滑动出现不同,在app,当你滑动一点点时候,导航底部线就会发生滚动,可以看出同时进行,而在微信小程序,由于是数据为中心,我直接设置滑动后产生效果就是增加一个数据关联...总结 页面就是一个基本结构和一堆模块外加js交互组合起来。快速完成一张复杂页面只需要:绘制基本架构、增加功能模块、js交互三部就能完成。1....如果需要,你可以绘制一张树形图,我认为图可以把一切复杂繁琐事情抽丝剥茧成小小步骤,而树形图是最直观体现。

    1K20

    directui

    即子窗口不以窗口句柄形式创建(windowless),只是逻辑上窗口,绘制在父窗口之上。...微软“DirectUI”技术广泛应用于Windows XP,Vista,Windows 7,浏览器左侧TaskPanel,控制面板导航界面,Media Player播放器,即时通讯工具MSN Messager...国外微软,国内腾讯,百度等公司客户端产品多采用这种方式来组织界面,从而很好将界面和逻辑分离,同时易于实现各种超炫界面效果如换色,换肤,透明等。...只需要在您程序添加一句代码,Skin++就能让您界面焕然一新,并拥有多种主题风格和色调动态切换功能。...:WM_PAINT消息,Skin++对其进行绘图操作;    7、绘图中需要用到图片、文字、字体等资源即根据ID、名称等条件到皮肤文件中去查找;    8、控件运行过程,各种界面行为变化均可通过处理消息与

    2.2K60

    Android高频面试专题 - 提升篇(二)View绘制流程

    六个步骤:①、绘制视图背景;②、保存画布图层(Layer);③、绘制View内容;④、绘制View子视图,如果没有就不用;⑤、还原图层(Layer);⑥、绘制滚动条。...检测到View所需要精确大小,这时候View最终大小就是SpecSize所指定值, AT_MOST :对应LayoutParamswrap_content。...UNSPECIFIED :不对View进行任何限制,要多大给多大,一般用于系统内部,ListView,ScrollView 4、MeasureSpec的确定 这个没啥好说,理解+记忆这个表格,子View...相对父容器左右边缘位置,getWidth()与getHeight()方法必须在layout(int l, int t, int r, int b)执行之后才有效 7、如何在onCreate拿到View...View,并且当这个View可见性为VISIBLE时候,ViewonDraw()方法将会被调用,invalidate()方法在 UI 线程调用,重绘当前 UI。

    9.2K31

    Android自定义View实现圆形环绕效果

    首先自定义一个View继承自LinearLayout,通过动态添加childView方式将子控件添加到View。思路是先添加中间圆形头像,然后添加周围小图标。...1.实现了圆形头像显示,可以去参考网上或github上demo,圆形头像外圈其实是一个View,然后再把头像这个View盖到这个View上。...2.计算好周围相邻view之间角度,这里是要水平铺满,最多6个,所以相邻之间角度为180/ (6 – 1) = 36度。如果是360环绕,放n个图标,则相邻之间角度应该为360 / n 。...import com.ihaveu.iuzuan.cardgame.util.MeasureUtil; import java.util.ArrayList; import java.util.List...子控件位置 private int mWidth, mHeight;//控件长宽 private int mRadius;//子控件距离控件圆心位置 private int mCount; private List

    86520
    领券