Firemonkey中如何为TEdit控件的选中文本设置字体颜色
Firemonkey TEdit控件选中文本字体颜色设置方法
Firemonkey的TEdit默认样式未配置选中文本的字体颜色,要实现类似VCL的高亮背景下白色文字效果,可通过以下两种方式解决:
方法一:可视化修改样式
- 给窗体添加
TStyleBook控件,右键点击目标TEdit选择「Edit Custom Style」,将默认样式导出到StyleBook中 - 在样式编辑器里展开TEdit的样式节点,找到内部的
TTextInput控件(默认命名为TextInput) - 在Object Inspector中找到该控件的
SelTextColor属性,设置为需要的颜色(比如TAlphaColors.White) - 保存样式后,将TEdit的
StyleName关联到这个自定义样式
方法二:代码动态设置
直接通过代码获取TEdit内部的文本输入控件并设置选中文本颜色,示例代码:
var TextInput: TTextInput; begin TextInput := TTextInput(Edit1.FindStyleResource('TextInput')); if Assigned(TextInput) then TextInput.SelTextColor := TAlphaColors.White; end;
可将这段代码放在窗体OnCreate事件或TEdit的OnEnter事件中,确保控件初始化后生效。
注意:如果使用自定义样式,需确保内部文本输入控件的Name为
TextInput,否则要修改FindStyleResource的参数为对应名称。
内容的提问来源于stack exchange,提问作者user2580203
相关产品推荐
相关产品推荐

