在列表控件上显示提示信息

当我们在实现列表控件上的提示信息的时候,我们需要处理的一个难点是处理列表条目的折叠和展开这两种情况。

所谓列表条目的折叠,即在大图标模式(Large Icon Mode)下,列表条目的文字过长而被截断的情况。当用户选择这个条目后,条目的完整文字将会被显示,这个过程就是所谓的展开过程。

在我们的例子代码中,添加如下的代码,就可以轻松处理这种情况了。

>> 请移步至 www.topomel.com 以查看图片 <<

代码解析

我们先创建了一个列表控件并启用了列表的提示信息属性,然后我们添加了一个列表条目,同时设置了一个很长的条目文字。
当执行这个程序的时候,我们会发现,当条目没有被选择的时候,条目的文字将会被截断成两行,如果被选择了,则会展示所有的文字。

我们处理了来自列表控件的 WM_NOTIFY 通知消息,当收到此消息的时候,列表控件通知我们,是时候显示提示信息了。
接下来,是重要的时刻,我们先检查当前条目是否被展开,如果它是展开状态,那么我们将缓冲区设置为空字符串,以便末尾的 StringCchCat 只会将信息提示文本复制到缓冲区中。

另一方面,如果条目是折叠的,那么我们会附加一个行终止符,因为我们希望信息提示包含条目的全文,然后是提示文本。

运行此程序时,将鼠标悬停在折叠和展开的项目上,并观察折叠状态下的的信息提示是否包含条目的名称。
这个技法不复杂,在 MSDN 文档中也提到过,但许多开发者可能没有能注意到,所以今天就正儿八经的写出来,以供参考。

总结

所谓技术债,就是那些我们似懂非懂的东西始终没有彻底弄明白。日积月累,不明白的东西会越来越多,最终积重难返。
这就是我们需要不断求索的原因。

最后

Raymond Chen的《The Old New Thing》是我非常喜欢的博客之一,里面有很多关于Windows的小知识,对于广大Windows平台开发者来说,确实十分有帮助。
本文来自:《Displaying infotips for folded and unfolded listview items》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/168667.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

损失函数总结(十五):MSLELoss、RMSLELoss

损失函数总结&#xff08;十五&#xff09;&#xff1a;MSLELoss、RMSLELoss 1 引言2 损失函数2.1 MSLELoss2.2 RMSLELoss 3 总结 1 引言 在前面的文章中已经介绍了介绍了一系列损失函数 (L1Loss、MSELoss、BCELoss、CrossEntropyLoss、NLLLoss、CTCLoss、PoissonNLLLoss、Gau…

城市生命线丨市政综合管廊监测系统的效果

市政综合管廊&#xff0c;又被称为城市生命线&#xff0c;是我们在地下建造的一个智慧而高效的空间。它把市政、电力、通讯、燃气、给排水等各种管线集于一体&#xff0c;解决了城市中反复开挖路面、架空线网密集、管线事故频发等问题&#xff0c;为城市运行提供了重要的基础设…

C#,怎么修改(VS)Visual Studio 2022支持的C#版本

一些文字来自于 Microsoft . &#xff08;只需要读下面的红色文字即可&#xff01;&#xff09; 1 C# 语言版本控制 最新的 C# 编译器根据项目的一个或多个目标框架确定默认语言版本。 Visual Studio 不提供用于更改值的 UI&#xff0c;但可以通过编辑 .csproj 文件来更改值。…

浅谈餐饮业油烟污染现状及在线监测系统的设计与应用

贾丽丽 安科瑞电气股份有限公司 上海嘉定 201801 摘要&#xff1a;城市餐饮业油烟污染成了困扰城区环境保护部门和人民群众日常生活的主要问题。油烟污染已经成为我国一个重大的污染源&#xff0c;是形成PM2.5的重要污染源之一&#xff0c;为了解决餐饮业油烟管理方面存在的问…

linux镜像的下载,系统下载(个人使用)

文章目录 一、系统之家二、国内镜像源三、Centos官网四、安装成功截图五、镜像类型的区别参考文档 一、系统之家 系统之家官网 二、国内镜像源 下载镜像地址&#xff1a; 1、官网地址&#xff1a;https://www.centos.org/ 2、阿里镜像站&#xff1a;https://mirrors.aliyu…

人工智能基础_机器学习041_Sigmoid函数详解_Sigmoid损失函数推导_最大似然函数推导---人工智能工作笔记0081

然后我们再来看一下sigmoid函数的推导过程,可以看到首先我们把 sigmoid的函数写成两种情况 可以看到P(y|x;theta) = htheta(x), y=1 这个时候y=1 也就是是一种分类,然后另一种,就是相减, 是1-htheta(x) 可以看到,把两个公式河道一起就得到了下面的概率公式. 这里是有关概率…

被OpenAI开除后,创始人奥特曼在微软找到了新工作

微软首席执行官纳德拉宣布&#xff0c;OpenAI创始人Sam Altman和Brockman及其同事将加入微软。随后&#xff0c;Altman转发了他的推特。 此前&#xff0c;外媒消息称&#xff0c;OpenAI首席科学家伊尔亚苏茨克维&#xff08;Ilya Sutskever&#xff09;周日晚告知公司员工&…

Dubbo快速实践

文章目录 架构相关概念集群和分布式架构演进 Dubbo概述Dubbo快速入门前置准备配置服务接口配置Provider配置Consumer Dubbo基本使用总结 本文参考https://www.bilibili.com/video/BV1VE411q7dX 架构相关概念 集群和分布式 集群&#xff1a;很多“人”一起 &#xff0c;干一样…

有哪些相见恨晚的stm32学习的方法?

有哪些相见恨晚的stm32学习的方法&#xff1f; 单片机用处这么广&#xff0c;尤其是STM32生态这么火&#xff01;如何快速上手学习呢&#xff1f; 你要考虑的是&#xff0c;要用STM32实现什么&#xff1f;为什么使用STM32而不是用8051&#xff1f;是因为51的频率太低&#xff…

requests库出现AttributeError问题的修复与替代方法

在使用App Engine时&#xff0c;开发者们通常会面临需要发送爬虫ip请求的情况&#xff0c;而Python中的requests库是一个常用的工具&#xff0c;用于处理爬虫ip请求。然而&#xff0c;在某些情况下&#xff0c;开发者可能会遇到一个名为AttributeError的问题&#xff0c;特别是…

软件数字签名是什么?软件数字签名有什么作用?

在当今互联网时代&#xff0c;网络安全威胁日益增加&#xff0c;恶意软件层出不穷&#xff0c;为了防止下载到恶意软件&#xff0c;用户在下载软件时都会确认其是安全可信的。由此&#xff0c;企业需要证明其发布的软件真实可信且未被篡改&#xff0c;如何证明这一点呢&#xf…

MATLAB常用绘图函数的使用

文章目录 绘制一图一线绘制一图多线用法一&#xff1a;plot用法二&#xff1a;hold on 绘制一图多图其他形式的坐标图分段函数绘制方法一&#xff1a;分段写函数的定义域值域方法二&#xff1a;判断定义域方法三&#xff1a;if else 判断 横纵坐标范围设置标题、轴标签、图例、…

JVM基础- 垃圾回收器

基本介绍 Java虚拟机&#xff08;JVM&#xff09;中的垃圾回收器是用来自动管理内存的关键组件。它负责识别并回收不再使用的内存&#xff0c;从而防止内存泄漏。不同的JVM实现提供了多种垃圾回收器&#xff0c;每种回收器都有其特定的使用场景和性能特点。以下是一些常见的JV…

16路模拟信号转RS-485/232,Modbus RTU 通讯协议数据采集24位A/D转换模块 YL29

特点&#xff1a; ● 16路模拟信号采集&#xff0c;隔离转换 RS-485/232输出 ● 采用24位AD转换器&#xff0c;测量精度优于0.05% ● 通过RS-485/232接口可以程控校准模块精度 ● 信号输入 / 输出之间隔离耐压3000VDC ● 宽电源供电范围&#xff1a;8 ~ 32VDC ● 可靠性高…

【从入门到起飞】JavaSE—带你了解Map,HashMap,TreeMap的使用方法

&#x1f38a;专栏【Java基础】 &#x1f354;喜欢的诗句&#xff1a;更喜岷山千里雪 三军过后尽开颜。 &#x1f386;音乐分享【The truth that you leave】 &#x1f970;欢迎并且感谢大家指出我的问题 文章目录 &#x1f33a;双列集合的特点&#x1f384;Map&#x1f354;Ma…

[Kettle] 单变量统计

单变量统计是对数据进行单个变量的数据统计&#xff0c;以字段为单变量&#xff0c;可以分别对多个字段进行数据统计&#xff0c;统计类型有N(统计数量)、最小值、最大值、平均值、样本标准差、中位数和任意百分位数等 数据源 2018年上学期期末考试成绩(Kettle数据集9).xlsht…

客户管理系统大盘点!推荐这五款

客户管理系统大盘点&#xff01;推荐这五款。 客户管理系统也就是CRM&#xff0c;可以说是企业刚需&#xff0c;国内外的客户管理系统也是数不胜数&#xff0c;到底有哪些是真正好用&#xff0c;值得推荐的呢&#xff1f;本文将为大家推荐这5款好用的客户管理系统&#xff1a;…

Cannot read property ‘pickAlgorithm‘ of null

Cannot read property pickAlgorithm of null 报错显示 node 和 npm的版本号不对应 查看版本号 node -v npm -v node的版本对应 Previous Releases | Node.js (nodejs.org) 我们需要改成对应的mpm版本号 npm install npm6.14.12 -g nodejs与npm版本对应关系以及使用nvm管理n…

论文阅读:“基于快速特征点提取和描述算法与色调、饱和度和明度的图像特征点匹配算法”

文章目录 摘要引言方法实验结果图像预处理结果对比图像配准结果对比 参考文献 摘要 提出了一种基于快速点特征提取和描述&#xff08;ORB&#xff09;算法与色调、饱和度和明度&#xff08;HSV&#xff09;的图像特征点匹配算法。首先利用双边滤波和均值滤波结合对图像进行预处…