Action类,ActionGroup类,MenuManager类介绍
SWT中菜单是Mean类,在前面章节中已经介绍过Menu类的使用.
菜单项用MeauItem类来实现.但是在实际开发中,同一种功能会有多中表现形式,
例如:Eclipse中的"新建"功能,他会分别出现在主菜单,主工具栏,右键菜单里,
如果都是用MeanuItem来实现,就需要写三份代码,以后也要维护三份代码.当然也可以将时间处理
写成外部类来共享代码,但名称,图像以及一些其他的信息写成外部类来共享则不太方便.
JFace包中已经对以上问题提供了解决方案,JFace提供了一个Action类,它将名称,
图像,动作处理程序等集成在其中,这样就可以共享这些Action来形成菜单项,工具栏按钮等.
当然在底层最后用于Menu的还是MenuItem对象,将Action转化成MenuItem是由
MenuManager(菜单管理器)来完成的.MenuManager简化了菜单的创建,一旦生成了
MenuManager对象,就可以通用于菜单栏,弹出菜单,工具栏下拉菜单.
另外.Action写成一个个的类会很凌乱.JFace又提供了一个ActionGroup类用于统一管理Action.
然后让外界程序通过ActionGroup来访问Action.当然,ActionGroup并非是使用Action所一定要的类.,只是用它会更好.
时间: 2024-10-24 21:48:02