1、概览
与其他Swing组件一样,文本组件由一个模型(Document 接口的一个实现)和一个U代表( javax. swing. plaf . basic . BasicTextUI类的一个扩展)组成。文本组件还使用一个编辑器工具包(EditorKit类的一个扩展)和一个视图(View类的一个扩展)。
2、属性集和风格常量
每个文本组件都有一个文档,每个文档维护一个元素分层。有关文档和元素的更多信息。元素维护一个文档中的起始位置和结束位置,并维护一个属性集,这个属性集由位于起始位置和结束位置之间的内容所使用。
属性集由AttributeSet接口定义。
3、定制动作
4、视图
Swing组件实现一个模式-视图-控制器的体系结构,这个体系结构把一个组件的数据(模型)和这个组件的可视代表(又称作一个UI代表)分离开。虽然可以实现定制的UI代表,但在实际中很少实现定制的UI代表,因为组件的可视代表由当前的界面样式来决定。
另一方面,显示文本组件内容的方式与界面样式无关。再有,经常需要修改文本内容的可视代表但不改变这个组件的界面样式。例如,一-个程序员的编辑器可能有一个选项,这个选项用彩色来显示程序语言的关键字。