【问题标题】:Forcing a Cocoa app called from java to take focus强制从 java 调用的 Cocoa 应用程序获得焦点
【发布时间】:2009-11-10 23:36:36
【问题描述】:

我有一个从我的 java 调用的 OSX 可可应用程序,如下所示:

   String cmd = "/Users/mike/ASJPictureTaker.app/Contents/MacOS/ASJPictureTaker";

    Runtime run = Runtime.getRuntime();
    Process pr;
    pr = run.exec(cmd);
    pr.waitFor();

ASJPictureTaker 应用程序加载并运行良好,但是当调用 exec 时,它不会从主应用程序获取焦点。有没有办法告诉 Cocoa 应用程序在启动时窃取焦点?此外,是否有一个应用程序在关闭之前不允许用户切换到其他应用程序?

【问题讨论】:

    标签: java cocoa macos focus


    【解决方案1】:

    不允许用户切换到其他应用程序称为“kiosk 模式”-and it's described here

    【讨论】:

    • 现在我认为将用户锁定在“koisk 模式”可能是个坏主意,但我仍在寻找将 Cocoa 应用程序带到应用程序堆栈顶部的方法。
    【解决方案2】:

    这个调用成功了:

    [[NSApplication sharedApplication] activateIgnoringOtherApps:YES];

    【讨论】:

      猜你喜欢
      • 2011-09-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-05-04
      • 2020-06-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多