环境:
JDK 1.6
Netbeans 6.5
MATLAB Version 7.6 (R2008a)
MATLAB Builder JA Version 2.0.1 (R2008a)
问题:
在一个Java GUI程序中第一次使用由MATLAB Builder JA编译的matlab画图函数时,可以方便的使用zoom in,zoom out 等matlab的figure工具栏。但是当重新计算数据并用相同函数画图时,zoom in,zoom out 等figure工具栏都不可用,并在Netbeans的output中显示:
Error while evaluating uitoggletool ClickedCallback
我首先修改了原matlab程序,在每一个画图命令前都加上‘figure()’命令,但是没有成功:-(
之后我修改了JAVA代码。原先的代码是每按一次画图按钮,便分出一个线程,实例化一个由MATLAB Builder JA编译的Java类,其中就包括那个画图函数,这个函数被Java调用,进行绘图;修改之后,我把实例化的过程放到了GUI程序的构造方法中,也就是每次运行这个Java GUI程序时,由MATLAB Builder JA编译的Java类只会被实例化一次,在GUI程序关闭时才会调用其dispose()方法释放其资源。
修改之后,figure工具栏可以任意使用。 可是此问题的机理还是不太明白。我已发信至其他程序员,希望能得到满意答复。
No comments:
Post a Comment