public interface IIOParamController 
      IIOParam对象的设置的对象来实现的接口。 
       此接口仅指定调用控制器的通用activate方法,而不考虑控制器如何获取值( 即 ,控制器是否提供GUI或仅计算一组值与此接口无关)。 
        在activate方法中,控制器通过查询IIOParam对象的get方法来获取初始值,通过任何方式修改值,然后调用IIOParam对象的set方法来修改适当的设置。 通常,这些set方法将在最终提交时一次被调用,以便取消操作不会影响现有值。 一般来说,应用程序可能会期望当activate方法返回true时, IIOParam对象可以在读或写操作中使用。 
 供应商可以选择为他们为特定插件定义的IIOParam子类提供GUI。 这些可以在相应的IIOParam IIOParam类中设置为默认控制器。 
 应用程序可以覆盖任何默认GUI,并提供自己的控制器嵌入到自己的框架中。 所需要的只是activate方法的模式(不退回,直到被取消或提交),尽管它不需要提出明确的模态对话框。 这种非模态GUI组件将大致如下编码: 
  class MyGUI extends SomeComponent implements IIOParamController {
    public MyGUI() {
        // ...
        setEnabled(false);
    }
    public boolean activate(IIOParam param) {
        // disable other components if desired
        setEnabled(true);
        // go to sleep until either cancelled or committed
        boolean ret = false;
        if (!cancelled) {
            // set values on param
            ret = true;
        }
        setEnabled(false);
        // enable any components disabled above
        return ret;
    }  
        或者,诸如数据库查找或命令行解析的算法过程可以用作控制器,在这种情况下, activate方法将简单地查找或计算设置,调用IIOParam.setXXX方法,并返回true 。 
boolean activate(IIOParam param)
true ,则IIOParam对象中的所有设置都应准备好在读或写操作中使用。 
           如果返回false ,则IIOParam对象中的任何设置都不会受到干扰( 即用户取消了该操作)。 
          param - 要修改的 
            IIOParam对象。 
           true如果 
            IIOParam已被修改, 
            false false。 
           IllegalArgumentException - if 
            param is 
            null or is not an instance of the correct class. 
            Submit a bug or feature 
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
 Copyright © 1993, 2014, Oracle and/or its affiliates. All rights reserved.