isjava not correct?

1 次查看(过去 30 天)
Daniel
Daniel 2016-5-18
评论: Daniel 2016-5-18
When I run the following code:
fH = figure;
textAreaHandle = javaObjectEDT('javax.swing.JTextArea');
scrollPaneHandle = javaObjectEDT('javax.swing.JScrollPane', textAreaHandle);
[javaHandle,matlabHandle] = javacomponent(scrollPaneHandle,[20,20,300,50],fH);
I get a figure with a java text area. When I look at the value of javaHandle it is the following:
javaHandle =
javahandle_withcallbacks.javax.swing.JScrollPane
When I run the isjava command on javaHandle, it returns a false, which is incorrect.
>> isjava(javaHandle)
ans =
0
I am wondering how can I fix this so that isjava returns true when run with this javaHandle variable? Is there another function I can use?
I am running 2015b
Thanks in advance

采纳的回答

Walter Roberson
Walter Roberson 2016-5-18
javacomponent is not a documented routine, and the output of it is not specifically a java object (it is a handle to a component, but the handle could be a MATLAB handle.)
You can get the java object by using the java method on the javaHandle
  1 个评论
Daniel
Daniel 2016-5-18
Thank you! The following code returned what I wanted
>> isjava(javaHandle.java)
ans =
1

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Call Java from MATLAB 的更多信息

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by