You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Delphi 11.3设计时为Object Inspector添加自定义Web颜色调色板?

Delphi 11.3 自定义设计时颜色下拉列表解决方案

方法一:通过设计时包注册自定义颜色

这是最稳定的长期方案,可独立保留自定义调色板且不干扰IDE默认配置:

  1. 创建新的设计时包(File -> New -> Package)
  2. 在包的单元中定义颜色常量并完成注册:
unit CustomColorReg;

interface

uses
  DesignIntf;

procedure Register;

implementation

const
  // 自定义命名颜色
  clMyPrimary = $FF2563EB;
  clMySecondary = $FF10B981;

procedure Register;
begin
  // 注册到自定义分组,第三个参数为分组显示名称
  RegisterColor(clMyPrimary, 'My Primary Blue', 'Custom Palette');
  RegisterColor(clMySecondary, 'My Secondary Green', 'Custom Palette');
  
  // 注册指定Web颜色到独立分组
  RegisterColor(clWebSlateBlue, 'Slate Blue', 'Web Colors');
  RegisterColor(clWebPink, 'Pink', 'Web Colors');
end;

end.
  1. 编译包并安装到IDE(右键包 -> Install),重启Delphi后,颜色下拉列表会新增你定义的分组和颜色。

方法二:手动修改IDE颜色配置文件

适合快速添加颜色,无需编写代码:

  1. 打开Delphi配置目录,路径示例:C:\Users\<你的用户名>\AppData\Roaming\Embarcadero\BDS\22.0
  2. 找到并编辑ColorPalette.xml文件,在现有分类后添加自定义分类:
<Category Name="Custom Palette">
  <Color Name="My Primary Blue" Value="FF2563EB" />
  <Color Name="My Secondary Green" Value="FF10B981" />
</Category>
<Category Name="Web Colors">
  <Color Name="Slate Blue" Value="FF6A5ACD" />
  <Color Name="Pink" Value="FFFFC0CB" />
</Category>
  1. 保存文件后重启IDE,自定义颜色会出现在下拉列表中。

主题僵化与故障解决

  • 避免主题冲突:将自定义颜色放在独立分组,不要修改IDE默认主题的颜色条目,防止主题切换时出现异常。
  • 包故障排查:若安装包后IDE异常,先卸载该包,检查代码中是否重复注册颜色常量或引用错误单元。
  • Web颜色一致性:使用Delphi内置的clWeb*系列常量(如clWebSlateBlue),而非手动输入RGB值,确保颜色匹配标准Web色。

内容的提问来源于stack exchange,提问作者Khorkhe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 09:57:32