Altova XMLSpy 2024 Enterprise Edition

下方代码片段展示了如何创建UI更新事件处理器。

 

 

01 /**

02    * 来自XMLSpyControl的Call-back

03    * 用来启用/禁用命令

04    */

05   @Override

06   public void onUpdateCmdUI() throws AutomationException

07   {

08     // 如果queryStatus的结果包含Supported (1)和Enabled (2)标记,则该命令应被启用

09     for ( java.util.Map.Entry<Integer, MenuItem> pair : menuMap.entrySet() )

10       pair.getValue().setEnabled( XMLSpyContainer.xmlSpyControl.queryStatus( pair.getKey() ) > 2 );

11   }

12    /**

13    * 来自XMLSpyControl的Call-back

14    * 由于UI更新,通常在启用/禁用命令时调用

15    */

16   @Override

17   public boolean onIsActiveEditor( String i_strFilePath ) throws AutomationException

18   {

19     try {

20       return XMLSpyContainer.xmlSpyDocument.getDocument().getFullName().equalsIgnoreCase( i_strFilePath );

21     } catch ( Exception e ) {

22       return false;

23     }

24   }

 

© 2017-2023 Altova GmbH