子窗口管理

子窗口的操作包括新建、激活、关闭,示例代码如下:

新建子窗口

以新建地图窗口为例,实现的示例代码如下:

//获取当前工作空间
Workspace workspace = Application.getActiveApplication().getWorkspace();
//获取工作空间中的首个数据源
Datasource datasource = workspace.getDatasources().get(0);
//获取数据源中的首个数据集
Dataset dataset = datasource.getDatasets().get(0);
//新建空白地图
IFormMap formMap = (IFormMap) FormUtilities.fireNewWindowEvent(WindowType.MAP);
//将数据集添加到新建的地图窗口
MapViewUIUtilities.addDatasetsToMap(formMap.getMapControl().getMap(), 0, dataset);

关闭子窗口

以关闭地图窗口为例,实现的示例代码如下:

//获取当前窗口
IForm activeForm = Application.getActiveApplication().getActiveForm();
//关闭地图窗口
Application.getActiveApplication().getMainFrame().getFormManager().close(activeForm);

激活子窗口

激活子窗口的示例代码如下:

//激活窗口改变监听
ActiveFormChangedListener listener = new ActiveFormChangedListener() {
	@Override
	public void activeFormChanged(ActiveFormChangedEvent activeFormChangedEvent) {
		//窗口改变后执行的方法
	}
};
//绑定激活窗口改变事件
Application.getActiveApplication().getMainFrame().getFormManager().addActiveFormChangedListener(listener);
//移除激活窗口改变事件
Application.getActiveApplication().getMainFrame().getFormManager().removeActiveFormChangedListener(listener);

相关内容

定制桌面启动

定制工作空间管理器节点

打开数据

浮动窗口管理

进度条

输出窗口

已封装的UI控件