在一般的应用程式中,使用 ComboBox 提供下拉选单的功能,让使用者选择不同项目,一般而言, ComboBox 的项目没有什么特别的,但在特定的应用程式中,有时候会希望每个项目有一些效果呈现,例如:
- 每个项目都能有个 icon 对应
- 每个项目的文字颜色可以不一样
第一个需求,FireMonkey的 TComboBox已经帮我们透过 images (TImagelist) 提供了,所以在本篇文章里面不讨论。
第二个需求,则需要加一些程式码跟设定来完成:
1. 先把 ComboBox 的 DropDownKind 设定成 Custom.
2. 把 ComboBox 里面的每个字串设定为不同的颜色, 加入以下程式码, 可以把第一个项目设定成红色, 第二个项目设定成蓝色.
ComboBox1.ListBox.ListItems[0].TextSettings.FontColor := TAlphaColorRec.Red;
ComboBox1.ListBox.ListItems[0].StyledSettings := ComboBox1.ListBox.ListItems
[0].StyledSettings – [TStyledSetting.ssFontColor];
ComboBox1.ListBox.ListItems[1].TextSettings.FontColor := TAlphaColorRec.Blue;
ComboBox1.ListBox.ListItems[1].StyledSettings := ComboBox1.ListBox.ListItems
[1].StyledSettings – [TStyledSetting.ssFontColor];
设定画面如下图:
执行结果如图:
这样就完成了,分享给大家.