TButton.Caption 中的特殊 unicode 字符(而不是图标)

Special unicode characters in TButton.Caption (instead of icons)

是否可以从键盘输入特殊的 Unicode 字符,link 以下字符?

U+2603  ☃   SNOWMAN
U+2604  ☄   COMET
U+2605  ★   BLACK STAR
U+2606  ☆   WHITE STAR
U+2607  ☇   LIGHTNING
U+2608  ☈   THUNDERSTORM
U+2609  ☉   SUN
U+260A  ☊   ASCENDING NODE
U+260B  ☋   DESCENDING NODE

例如,我希望有带有 up/down arrows 的按钮,而不加载图像。

我尝试在键盘上输入 Alt+08593,但会插入其他字符(不是预期的箭头)。


更新:
这样做的原因是懒惰。我懒得搜索图标或创建自己的图标。例如,您可以简单地替换臭名昭著的 'save' 软盘图标。只需看看: 。砰!好的。对吗?

更新:
Delphi 似乎不接受某些字符,例如 (green book = 128215),copy/paste.

更新:
有一个很好的组件可以让你把 unicode 字符放在图像列表中:
https://github.com/EtheaDev/IconFontsImageList

Delphi IDE 不会接受那么高的 ALT 键代码。几个备选方案:

  • 从其他地方粘贴文本。
  • 直接在 .dfm 文件中输入数字代码。

作为第二种方法的示例,请在按钮标题的 .dfm 文件中尝试此方法 属性:

Caption = #8592#8593#8594#8595

你还提到绿皮书U+1F4D7。这是来自 BMP 之外,因此用代理对编码:

Caption = #55357#56535

我的猜测是,一旦您希望以彩色或不同大小显示字形,您就会发现使用文本无法做到这一点。您还可能会遇到不包含字符字形的字体 select。所以你会发现使用图像是最稳健的方法。

或者,如果您有 table 个十进制值:

9731  ☃   SNOWMAN
9732  ☄   COMET
9733  ★   BLACK STAR
9734  ☆   WHITE STAR
9735  ☇   LIGHTNING
9736  ☈   THUNDERSTORM
9737  ☉   SUN
9738  ☊   ASCENDING NODE
9739  ☋   DESCENDING NODE

那么就可以在Delphi.

中按如下方式使用键盘了

要将 Button1 的标题更改为雪人:

  1. Alt+F12将表单编辑为文本

  2. Ctrl+E进入增量搜索模式

  3. 键入 Button1,或尽可能多地键入 Button1

    的定义
  4. Caption = 属性 定义的右侧(我假设这里是 VCL)输入 # 后跟相关的 Unicode 值,例如#9731

    Caption = #9731

  5. 如果你想要文本和雪人一样,字符代码在引号之外,例如

    Caption = 'Snowman = '#9731

有关 # 语法(更常在 Delphi 源代码中输入,而不是在表单文件的文本视图中输入)的更多信息,请阅读 the online documentation.

中实际调用的控制字符串