三、TControl
FireMonkey重写了TControl的代码,实现了众多接口,如下图:
基类上实现了众多功能,这里不详细描述。
四、TEdit
编辑框是从TControl—TStyledControl继承下来的,并实现了众多接口,如下图:
从实现的接口可以看到,包括键盘、光标、文字处理等都进行了逐一处理,从中可以看到每种功能的实现思路和方式。
我最关心的是文字的输出处理,FireMonkey使用了一个独立的类TTextLayout来进行文字输出管理:
这是一个抽象类,具体的实现在TTextLayoutNG中。