我有一个项目,其中包括创建一个适用于其他应用程序的应用程序。我的应用程序始终位于顶部,并允许透明度与以下应用程序进行交互。一切顺利,我已经将topMost(true)应用到应用程序中并且确定无误。
因为我在获取窗口对话框时遇到问题(警报但没有提示或确认)以保持与我的主窗口的交互无效直到它被关闭 - https://groups.google.com/forum/#!topic/tidesdk/yYkEcC6X5y0 - 我不得不创建自己的对话框窗口。我设法通过创建一个子窗口来创建一个子窗口,将其属性topMost设置为true,并且每当有一个atemp激活/聚焦主窗口时,总是重新聚焦对话框。
当我需要创建另一个窗口来充当Photoshop浮动工具窗口时,我的问题就来了。在使用主应用程序和对话框进行迭代时,此窗口会失去焦点并进入主窗口下方。我需要这个窗口始终保持在主窗口和对话框工具之上,以便UX得到正确的结果。
我已经设法让窗户保持在最顶层,但是我正在玩焦点并且没有对所有窗户进行聚焦,而且它变得一团糟。
有没有人不能如何从主窗口及其所有子窗口设置顺序?
谢谢,
彼得
答案 0 :(得分:0)
我已经设法快速解决了这个问题,所以这就是:
创建所有窗口(主窗口,工具和对话框)时,我只在方法createWindow上使用topMost param属性 (https://github.com/TideSDK/TideSDK-doc/tree/master/source/guides/getting_started#window-elements)。
在主窗口中,我只使用tiapp.xml属性 (https://github.com/TideSDK/TideSDK-doc/tree/master/source/guides/getting_started#tiappxml-configuration)。
只有在工具窗口中我才在窗口init(一次执行)调用方法setTopMost(true)。通过这种方式,窗口将永远保持最佳状态。
最后,对于对话框,每当用户尝试与工具或主窗口进行交互时,我都会强制对焦。
所以顺序就是这样(从上到下)
答案 1 :(得分:0)
原来之前的解决方案未经过正确测试。主应用程序没有将tiapp.xml定义为最高的true。所以我想我需要深入研究这个问题
:(