0

如何检查 UiInstance 是否已经在运行?我需要知道以便知道是使用 UiApp.getActiveApplication() 还是 UiApp.createApplication(); 问题是函数可能不会按特定顺序调用。

4

1 回答 1

0

无意冒犯,但这个问题对我来说没有多大意义......只能有一个 UiApp 实例,在独立应用程序中,它必须以 a 开头,doGet()所以我想知道如何在不从应用程序创建开始的情况下启动应用程序?
一旦你创建了这个实例,只要你关闭浏览器窗口,它就会一直存在,你会隐藏所有可能的用户操作来源(例如隐藏所有小部件或禁用所有按钮),并且在两者之间发生的一切都是结果脚本中的处理程序调用或直接函数调用,所有这些都必然是后续的,因此使用getActiveApplication().

如果我错过了什么(当然这是完全可能的)请解释。


编辑:按照您的评论:

如果您使用嵌入在文档中的 UiApp,情况会有所不同,但差别不大:2 种不同的情况:

  1. 对话框:每次您创建一个新对话框时,它都会“覆盖”现有对话框,但不会“意识到”它,即第一个 UI 值对下一个对话框不可用。所以在创建一个新的(app.close();return app;)之前关闭每个“层”是一个更好的主意,否则你将不得不手动关闭每个“层”,因为我想将对话框一直保持在屏幕上并不是一个好主意: -) 从一个实例传递到另一个实例的数据必须使用某种存储来处理。
  2. 侧边栏:我建议在侧边栏中创建一个起始 UI,以创建 Ui(例如显示欢迎消息或菜单)并让所有其他功能使用此 Ui 实例getActiveApplication(),这将避免 UI“闪烁“虽然它已被重新绘制并允许您一直使用所有值。

在这两种情况下,选择确实是你的,但我建议的做法效果更好,让你完全控制发生的事情。

于 2013-10-19T16:34:46.680 回答