You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

JVx多屏幕应用如何获取当前/活动屏幕?

获取JVx应用的当前活动屏幕

JVx本身就提供了技术无关的API来解决这个问题,不用再去遍历组件做类型判断。

核心API用法

直接用Application类的全局方法就能拿到你需要的屏幕实例:

  • Application.getInstance().getCurrentScreen():返回当前处于活动状态的IScreen实例,不管是桌面、Web还是移动端,底层会自动适配对应的组件实现,完全不用手动区分组件类型。
  • Application.getInstance().getScreens():返回所有已打开屏幕的集合,适合在管理面板里列出全部屏幕。

代码示例

在你的管理弹窗里可以这么写:

// 获取当前活动屏幕
IScreen activeScreen = Application.getInstance().getCurrentScreen();

// 获取所有已打开的屏幕
Collection<IScreen> allScreens = Application.getInstance().getScreens();

// 遍历屏幕列表,在弹窗中展示信息
for (IScreen screen : allScreens) {
    boolean isActive = screen.equals(activeScreen);
    // 这里可以渲染屏幕名称、是否激活等状态
}

方案优势

JVx的IScreen是所有屏幕组件的统一抽象接口,不管底层是桌面的Frame、Web的Panel还是移动端的包装面板,都实现了这个接口。通过Application的全局方法获取,完全不用关心底层组件差异,完美适配多端场景。

如果你的应用用了自定义屏幕容器,只要正确集成了JVx的屏幕管理机制,这些API就能正常工作。另外,屏幕切换时JVx会自动更新currentScreen的引用,能实时拿到最新的活动屏幕。

内容的提问来源于stack exchange,提问作者we42

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.24 01:28:19