【发布时间】:2018-01-13 00:00:18
【问题描述】:
我正在尝试编写一个应用程序来放置当前温度(从在线资源获取)并在系统托盘/通知的应用程序图标中显示温度(作为文本)(适用于 Windows 7+)。
我正在使用 Delphi TTrayIcon 组件,但我不知道如何在图标区域显示文本。我过去有其他应用程序可以做到这一点,所以它一定是可能的。
【问题讨论】:
-
您无法在此处显示文本。该区域显示图标。您可以制作一个图标,在其上绘制温度,然后更新图标以显示显示温度的新图标。
-
就像KenWhite说的你的问题不是如何在托盘图标上写文字你的问题是如何更改图标
-
我会缩小这个问题的范围。为了满足规范,您应该提供 16x16 和 32x32 像素的图标。这是因为用户可以在您的应用程序中更改 DPI。将运行,如果您只提供 16x16,它将被缩放到更大的尺寸。如果您可以“即时”创建这样的图标而不保存到磁盘可能是您想问的问题。
-
@victoria Er,这不对。通知图标是一个小图标。所以你问系统小图标的大小是多少。并且可以肯定它可以在 16 到 32 之间。
-
@David,如果只提供一个 16x16 像素的图标,它会在设置为高 dpi 值的系统中缩放到更大的尺寸。这可能导致没有吸引力的结果。建议您在资源文件中同时提供 16x16 像素图标和 32x32 图标。使用 LoadIconMetric 确保正确加载和缩放正确的图标。 (source)。您应该渲染两种尺寸。
标签: windows delphi object pascal tray