配置Matlab命令窗口的指针焦点属性

时间:2013-06-03 15:22:52

标签: matlab focus

  • 我在Linux下运行Matlab 2013a,使用Xmonad(使用XMonad.Config.Xfce包)。
  • 无论命令窗口是否已停靠,都会出现此问题。
  • 除非找到指针,否则命令窗口提示符不会获得键盘焦点 在命令窗口上。

有没有办法让Matlab命令窗口像其他普通窗口一样具有焦点行为,比如终端?

最重要的是:我希望键盘焦点跟随窗口焦点, 并且不需要指针的任何特殊定位,这样我就可以在我的窗口周围“ Alt - Tab ”并让命令窗口获得键盘焦点。到目前为止,我发现的所有资源都与程序控制焦点有关;我只是想在交互式会话中改善用户体验。

2 个答案:

答案 0 :(得分:1)

要在命令窗口中获得键盘焦点,请在xmonad.hs

中添加以下内容
import XMonad.Hooks.SetWMName
import XMonad.Hooks.ManageHelpers

并按如下方式配置ManageHook

myManageHook = composeAll . concat $
    [ [appName =? a --> doCenterFloat | a <- myFloatAS ]
    , (your other hooks)
    ] where
        myFloatAS = ["MATLAB"]

最后,在setWMName "LG3D"中添加startupHook。有关使用此功能的完整xmonad.hs配置,请参阅here(这是我找到解决方案的地方)。如果您有其他Java应用程序无法获得焦点,您可以将它们添加到myFloatAS列表中。

答案 1 :(得分:0)

内置java中存在问题。

如果我跑:

export MATLAB_JAVA=/usr/lib/jvm/java-7-openjdk/jre
matlab -desktop

Matlab按预期工作。

我遇到了这个问题,运行MATLAB2014a。我设置了setWMName&#34; LG3D&#34;但我仍然无法专注于我的窗户。我不得不点击聚焦窗口来获取光标,有时情况更糟,我不得不点击随机位置,直到我把光标拿回来。这不会发生在MATLAB2010上。对我有用的是如上所述使用java的原生版本。

最后,我使用以下bash脚本启动matlab8:

#!/bin/bash
export MATLAB_JAVA=/usr/lib/jvm/java-7-openjdk-amd64/jre/
/usr/local/bin/matlab8 -desktop -nosplash