如何在MATLAB中检索所选文本?

Ric*_*ton 5 matlab selection

MATLAB具有多种选择敏感功能.例如,如果您选择一些文本并按F9,它将评估您的选择.(除非您重新映射了键盘设置.)

我希望能够通过快捷方式复制此功能.因此,例如,我想单击显示当前选择的快捷方式.我的快捷方式回调就是disp(GetSelection()).

但是进入了GetSelection什么?

Jon*_*nas 5

感谢@Yair Altman无证Matlab,我能够找出java命令来完成这项工作.

将它放在快捷方式(或快捷方式调用的函数)中:

%# find the text area in the command window
jDesktop = com.mathworks.mde.desk.MLDesktop.getInstance;
try
  cmdWin = jDesktop.getClient('Command Window');
  jTextArea = cmdWin.getComponent(0).getViewport.getComponent(0);
catch
  commandwindow;
  jTextArea = jDesktop.getMainFrame.getFocusOwner;
end

%# read the current selection
jTxt = jTextArea.getSelectedText;

%# turn into Matlab text
currentSelection = jTxt.toCharArray'; %'

%# display
disp(currentSelection)
Run Code Online (Sandbox Code Playgroud)