delphi - 什么是 Win10 通知图标/BalloonTipText max。长度
问题描述
Win10 通知框文本 (BalloonTipText) 的最大文本长度是多少?
如果最终用户单击通知框,是否会以某种方式显示更长的文本?
procedure ShowBalloonTips(info: string; title: string; timeout : integer = 3000);
var
TipInfo, TipTitle: string;
begin
IconData.cbSize := SizeOf(IconData);
IconData.uFlags := NIF_INFO;
TipInfo := info;
strPLCopy(IconData.szInfo, TipInfo, SizeOf(IconData.szInfo) - 1);
IconData.DUMMYUNIONNAME.uTimeout := timeout;
TipTitle := title;
strPLCopy(IconData.szInfoTitle, TipTitle, SizeOf(IconData.szInfoTitle) - 1);
IconData.dwInfoFlags := NIIF_INFO; //NIIF_ERROR; //NIIF_WARNING;
Shell_NotifyIcon(NIM_MODIFY, @IconData);
IconData.DUMMYUNIONNAME.uVersion := NOTIFYICON_VERSION;
Shell_NotifyIcon(NIM_SETVERSION, @IconData) ;
end;
解决方案
_NOTIFYICONDATA结构将“ szInfo ”字段定义为长度为 256 个字符,包括终止空字符:
szInfo:类型:TCHAR[256]
Windows 2000 及更高版本。一个以 null 结尾的字符串,指定要在气球通知中显示的文本。它最多可以有 256 个字符,包括终止空字符,但应限制为 200 个英文字符以适应本地化。要从 UI 中删除气球通知,请删除图标(使用 NIM_DELETE)或在 uFlags 中设置 NIF_INFO 标志并将 szInfo 设置为空字符串。
要更改气球文本,请再次调用Shell_NotifyIcon,将 NIM_MODIFY 作为第一个参数,只需更改“szInfo”的值。
推荐阅读
- c# - 如何使用 Unicode 在 C# 控制台中使用星座?
- ruby-on-rails - Rspec:间谍检测方法调用失败(我的模式错误)
- reactjs - React - 将字节数组从 API 保存到 xlsx 文件
- sql - 上个月数据的自联接表以添加缺失的记录
- django - django-channels nginx 设置
- python - 选择具有不明确值分配的数据框行
- javascript - 从 Redux 的多个位置在中间件中添加 reducer
- kubernetes - 如何让入口控制器向外部 IP 发送流量?
- scala - 做 INSERT INTO ... SELECT FROM 的鹅毛笔方式
- python - 如何通过选项卡遍历在对象焦点上引起 ttk OptionMenu 下拉选择(扩展)?