kd.bos.form.plugin

## 类 KDFormPlugin<T extends IFormPlugin>

- java.lang.Object
- - kd.bos.entity.plugin.AbstractDataModelPlugin
  - - kd.bos.form.plugin.AbstractFormPlugin
    - - kd.bos.form.plugin.KDFormPlugin<T>

- 所有已实现的接口:
    IDataModelChangeListener, IDataModelListener, ClickListener, ItemClickListener, ICloseCallBack, IFormPlugin
  直接已知子类:
    KDBillPlugin, KDListPlugin

      @KSObject(name="FormPlugin")
      public class KDFormPlugin<T extends IFormPlugin>
      extends AbstractFormPlugin

- - ### 构造器概要

    构造器
    构造器和说明
    `KDFormPlugin()`
    `KDFormPlugin(T plugin)` 构造方法：初始化插件

  - ### 方法概要

    所有方法 实例方法 具体方法
    限定符和类型 | 方法和说明
    --- | ---
    `void` | `addClickListeners(java.lang.String... key)` 添加到监听列表
    `void` | `addItemClickListeners(java.lang.String... key)` 插件的ItemClick怎么体现？
    `void` | `afterAddRow(AfterAddRowEventArgs e)` 创建新分录行之前事件之后
    `void` | `afterBindData(java.util.EventObject e)` 加载数据后操作
    `void` | `afterCreateNewData(java.util.EventObject e)`
    `void` | `afterDeleteEntry(AfterDeleteEntryEventArgs e)` 清空分录数据后事件
    `void` | `afterDeleteRow(AfterDeleteRowEventArgs e)` 删除分录行后事件
    `void` | `afterDoOperation(AfterDoOperationEventArgs e)` 操作后处理，操作什么？
    `void` | `afterMoveEntryDown(AfterMoveEntryEventArgs e)` 分录行下移
    `void` | `beforeAddRow(BeforeAddRowEventArgs e)` 创建新分录行之前事件
    `void` | `beforeBindData(java.util.EventObject e)` 加载数据前操作
    `void` | `beforeClick(BeforeClickEvent e)` 点击前事件
    `void` | `beforeClosed(BeforeClosedEvent e)` 关闭前操作
    `void` | `beforeDeleteEntry(BeforeDeleteEntryEventArgs e)` 清空分录数据前事件，可以由插件决定是否Cancel本次行为
    `void` | `beforeDeleteRow(BeforeDeleteRowEventArgs e)` 删除分录行前事件
    `void` | `beforeDoOperation(BeforeDoOperationEventArgs e)` 操作前处理，操作什么？
    `void` | `beforeFieldPostBack(BeforeFieldPostBackEvent e)`
    `void` | `beforeItemClick(BeforeItemClickEvent e)` 点击前
    `void` | `click(java.util.EventObject evt)` 点击后事件
    `void` | `closedCallBack(ClosedCallBackEvent e)` 关闭后的回调方法
    `void` | `confirmCallBack(MessageBoxClosedEvent e)` 处理带点击确认的提示框
    `void` | `contextMenuClick(ContextMenuClickEvent e)` 菜单点击
    `void` | `createNewData(BizDataEventArgs e)` 创建模型新数据包，一般在页面初始化时调用
    `void` | `customEvent(CustomEventArgs e)` 自定义事件
    `void` | `destory()` 销毁插件
    `IDataModel` | `getModel()` 获取model
    `IPageCache` | `getPageCache()` 获取页面缓存
    `java.lang.String` | `getPluginName()`
    `IFormView` | `getView()`
    `void` | `initialize()` 插件初始化
    `void` | `itemClick(ItemClickEvent e)` 点击
    `void` | `loadCustomControlMetas(LoadCustomControlMetasArgs e)` 加载定制控件元数据？
    `void` | `messageBoxClosed(MessageBoxClosedEvent e)` 关闭消息提示窗口
    `void` | `onCreateDynamicUIMetas(OnCreateDynamicUIMetasArgs e)` 创建动态UI元数据
    `void` | `onGetControl(OnGetControlArgs e)` 获取插件控件
    `void` | `pageRelease(java.util.EventObject e)` 页面释放
    `void` | `preOpenForm(PreOpenFormEventArgs e)` 打开表单前的处理
    `void` | `propertyChanged(PropertyChangedArgs e)`
    `void` | `registerListener(java.util.EventObject e)` 注册控件事件
    `void` | `setPluginName(java.lang.String className)` 设置插件的名称
    `void` | `TimerElapsed(TimerElapsedArgs e)` 定时器事件

    - ### 从类继承的方法 kd.bos.form.plugin.AbstractFormPlugin

      `customPrintDataObject, flexBeforeClosed, getControl, setCollapsible, setView, trace`

    - ### 从类继承的方法 java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

    - ### 从接口继承的方法 kd.bos.entity.datamodel.events.IDataModelListener

      `afterCopyData, afterImportData, beforeImportData, getEntityType, initImportData, loadData`

    - ### 从接口继承的方法 kd.bos.entity.datamodel.events.IDataModelChangeListener

      `afterMoveEntryUp, beforePropertyChanged, beforeSetItemValue`

- - ### 构造器详细资料

    - #### KDFormPlugin

          public KDFormPlugin()

    - #### KDFormPlugin

          public KDFormPlugin(T plugin)

      构造方法：初始化插件
      参数:
        `plugin` -

  - ### 方法详细资料

    - #### initialize

          @KSInsertMethod
          public void initialize()

      从接口复制的说明: `IFormPlugin`
      插件初始化
      指定者:
        `initialize` 在接口中 `IFormPlugin`
      覆盖:
        `initialize` 在类中 `AbstractFormPlugin`

    - #### registerListener

          @KSInsertMethod
          public void registerListener(java.util.EventObject e)

      从接口复制的说明: `IFormPlugin`
      注册控件事件
      指定者:
        `registerListener` 在接口中 `IFormPlugin`
      覆盖:
        `registerListener` 在类中 `AbstractFormPlugin`

    - #### addItemClickListeners

          @KSMethod
           @KSInsertMethod
          public void addItemClickListeners(java.lang.String... key)

      从类复制的说明: `AbstractFormPlugin`
      插件的ItemClick怎么体现？
      覆盖:
        `addItemClickListeners` 在类中 `AbstractFormPlugin`
      参数:
        `key` - 控件标识

    - #### addClickListeners

          @KSMethod
           @KSInsertMethod
          public void addClickListeners(java.lang.String... key)

      从类复制的说明: `AbstractFormPlugin`
      添加到监听列表
      覆盖:
        `addClickListeners` 在类中 `AbstractFormPlugin`
      参数:
        `key` - 控件标识

    - #### getView

          @KSMethod
           @KSInsertMethod
          public IFormView getView()

      覆盖:
        `getView` 在类中 `AbstractFormPlugin`

    - #### getModel

          @KSMethod
           @KSInsertMethod
          public IDataModel getModel()

      从类复制的说明: `AbstractFormPlugin`
      获取model
      返回:
        model

    - #### getPageCache

          @KSMethod
           @KSInsertMethod
          public IPageCache getPageCache()

      从类复制的说明: `AbstractFormPlugin`
      获取页面缓存
      覆盖:
        `getPageCache` 在类中 `AbstractFormPlugin`
      返回:
        缓存

    - #### afterAddRow

          @KSInsertMethod
          public void afterAddRow(AfterAddRowEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      创建新分录行之前事件之后

    - #### afterCreateNewData

          @KSInsertMethod
          public void afterCreateNewData(java.util.EventObject e)

      参数:
        `e` - 模型数据包创建之后的事件

    - #### afterDeleteEntry

          @KSInsertMethod
          public void afterDeleteEntry(AfterDeleteEntryEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      清空分录数据后事件

    - #### afterDeleteRow

          @KSInsertMethod
          public void afterDeleteRow(AfterDeleteRowEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      删除分录行后事件

    - #### afterMoveEntryDown

          @KSInsertMethod
          public void afterMoveEntryDown(AfterMoveEntryEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      分录行下移

    - #### beforeAddRow

          @KSInsertMethod
          public void beforeAddRow(BeforeAddRowEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      创建新分录行之前事件

    - #### beforeDeleteEntry

          @KSInsertMethod
          public void beforeDeleteEntry(BeforeDeleteEntryEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      清空分录数据前事件，可以由插件决定是否Cancel本次行为

    - #### beforeDeleteRow

          @KSInsertMethod
          public void beforeDeleteRow(BeforeDeleteRowEventArgs e)

      从接口复制的说明: `IDataModelChangeListener`
      删除分录行前事件

    - #### createNewData

          @KSInsertMethod
          public void createNewData(BizDataEventArgs e)

      从接口复制的说明: `IDataModelListener`
      创建模型新数据包，一般在页面初始化时调用

    - #### propertyChanged

          @KSInsertMethod
          public void propertyChanged(PropertyChangedArgs e)

      参数:
        `e` - 实体中属性值改变事件，按变化的多个行批量一次触发

    - #### click

          @KSInsertMethod
          public void click(java.util.EventObject evt)

      从接口复制的说明: `ClickListener`
      点击后事件
      指定者:
        `click` 在接口中 `ClickListener`
      覆盖:
        `click` 在类中 `AbstractFormPlugin`

    - #### afterBindData

          @KSInsertMethod
          public void afterBindData(java.util.EventObject e)

      从接口复制的说明: `IFormPlugin`
      加载数据后操作
      指定者:
        `afterBindData` 在接口中 `IFormPlugin`
      覆盖:
        `afterBindData` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 事件

    - #### afterDoOperation

          @KSInsertMethod
          public void afterDoOperation(AfterDoOperationEventArgs e)

      从接口复制的说明: `IFormPlugin`
      操作后处理，操作什么？
      指定者:
        `afterDoOperation` 在接口中 `IFormPlugin`
      覆盖:
        `afterDoOperation` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 操作后事件

    - #### beforeBindData

          @KSInsertMethod
          public void beforeBindData(java.util.EventObject e)

      从接口复制的说明: `IFormPlugin`
      加载数据前操作
      指定者:
        `beforeBindData` 在接口中 `IFormPlugin`
      覆盖:
        `beforeBindData` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 事件

    - #### beforeClick

          @KSInsertMethod
          public void beforeClick(BeforeClickEvent e)

      从接口复制的说明: `ClickListener`
      点击前事件
      指定者:
        `beforeClick` 在接口中 `ClickListener`
      覆盖:
        `beforeClick` 在类中 `AbstractFormPlugin`

    - #### beforeClosed

          @KSInsertMethod
          public void beforeClosed(BeforeClosedEvent e)

      从接口复制的说明: `IFormPlugin`
      关闭前操作
      指定者:
        `beforeClosed` 在接口中 `IFormPlugin`
      覆盖:
        `beforeClosed` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 关闭前事件

    - #### itemClick

          @KSInsertMethod
          public void itemClick(ItemClickEvent e)

      从接口复制的说明: `ItemClickListener`
      点击
      指定者:
        `itemClick` 在接口中 `ItemClickListener`
      覆盖:
        `itemClick` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 点击事件

    - #### loadCustomControlMetas

          @KSInsertMethod
          public void loadCustomControlMetas(LoadCustomControlMetasArgs e)

      从接口复制的说明: `IFormPlugin`
      加载定制控件元数据？
      指定者:
        `loadCustomControlMetas` 在接口中 `IFormPlugin`
      覆盖:
        `loadCustomControlMetas` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 事件

    - #### messageBoxClosed

          @KSInsertMethod
          public void messageBoxClosed(MessageBoxClosedEvent e)

      从接口复制的说明: `IFormPlugin`
      关闭消息提示窗口
      指定者:
        `messageBoxClosed` 在接口中 `IFormPlugin`
      覆盖:
        `messageBoxClosed` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 关闭消息提示事件

    - #### onCreateDynamicUIMetas

          @KSInsertMethod
          public void onCreateDynamicUIMetas(OnCreateDynamicUIMetasArgs e)

      从接口复制的说明: `IFormPlugin`
      创建动态UI元数据
      指定者:
        `onCreateDynamicUIMetas` 在接口中 `IFormPlugin`
      覆盖:
        `onCreateDynamicUIMetas` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 事件

    - #### onGetControl

          @KSInsertMethod
          public void onGetControl(OnGetControlArgs e)

      从接口复制的说明: `IFormPlugin`
      获取插件控件
      指定者:
        `onGetControl` 在接口中 `IFormPlugin`
      覆盖:
        `onGetControl` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 事件

    - #### preOpenForm

          @KSInsertMethod
          public void preOpenForm(PreOpenFormEventArgs e)

      从接口复制的说明: `IFormPlugin`
      打开表单前的处理
      指定者:
        `preOpenForm` 在接口中 `IFormPlugin`
      覆盖:
        `preOpenForm` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 打开表单前事件

    - #### confirmCallBack

          @KSInsertMethod
          public void confirmCallBack(MessageBoxClosedEvent e)

      从接口复制的说明: `IFormPlugin`
      处理带点击确认的提示框
      指定者:
        `confirmCallBack` 在接口中 `IFormPlugin`
      覆盖:
        `confirmCallBack` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 提示框关闭事件

    - #### closedCallBack

          @KSInsertMethod
          public void closedCallBack(ClosedCallBackEvent e)

      从接口复制的说明: `IFormPlugin`
      关闭后的回调方法
      指定者:
        `closedCallBack` 在接口中 `ICloseCallBack`
      指定者:
        `closedCallBack` 在接口中 `IFormPlugin`
      覆盖:
        `closedCallBack` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 关闭回调事件

    - #### beforeDoOperation

          @KSInsertMethod
          public void beforeDoOperation(BeforeDoOperationEventArgs e)

      从接口复制的说明: `IFormPlugin`
      操作前处理，操作什么？
      指定者:
        `beforeDoOperation` 在接口中 `IFormPlugin`
      覆盖:
        `beforeDoOperation` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 操作前事件

    - #### contextMenuClick

          @KSInsertMethod
          public void contextMenuClick(ContextMenuClickEvent e)

      从接口复制的说明: `IFormPlugin`
      菜单点击
      指定者:
        `contextMenuClick` 在接口中 `IFormPlugin`
      覆盖:
        `contextMenuClick` 在类中 `AbstractFormPlugin`
      参数:
        `e` - 菜单点击事件

    - #### beforeItemClick

          @KSInsertMethod
          public void beforeItemClick(BeforeItemClickEvent e)

      从接口复制的说明: `ItemClickListener`
      点击前
      参数:
        `e` - 点击事件

    - #### customEvent

          @KSInsertMethod
          public void customEvent(CustomEventArgs e)

      从接口复制的说明: `IFormPlugin`
      自定义事件

    - #### TimerElapsed

          @KSInsertMethod
          public void TimerElapsed(TimerElapsedArgs e)

      从接口复制的说明: `IFormPlugin`
      定时器事件

    - #### beforeFieldPostBack

          @KSInsertMethod
          public void beforeFieldPostBack(BeforeFieldPostBackEvent e)

    - #### pageRelease

          @KSInsertMethod
          public void pageRelease(java.util.EventObject e)

      从接口复制的说明: `IFormPlugin`
      页面释放

    - #### destory

          public void destory()

      从接口复制的说明: `IFormPlugin`
      销毁插件
      指定者:
        `destory` 在接口中 `IFormPlugin`
      覆盖:
        `destory` 在类中 `AbstractFormPlugin`

    - #### getPluginName

          @KSMethod
           @KSInsertMethod
          public java.lang.String getPluginName()

      指定者:
        `getPluginName` 在接口中 `IFormPlugin`
      覆盖:
        `getPluginName` 在类中 `AbstractFormPlugin`

    - #### setPluginName

          public void setPluginName(java.lang.String className)

      从接口复制的说明: `IFormPlugin`
      设置插件的名称
      指定者:
        `setPluginName` 在接口中 `IFormPlugin`
      覆盖:
        `setPluginName` 在类中 `AbstractFormPlugin`
      参数:
        `className` - 插件名称