0

对于自定义 uitable, http ://undocumentedmatlab.com/ 上有很多很好的提示。所以我试图为表格的每个单元格实现单独的格式,如 undocumentedmatlab 作者的书中第 4.1.1 章所述。

不幸的是,我不太了解 Java-Matlab 的连接,所以我想知道是否有人已经做过这个和那个例子,可以给我一些提示。

首先,我从一开始就检查了我的 java 版本并安装了 JDK:

版本-java

Java 1.6.0_17-b04 与 Sun Microsystems Inc. Java HotSpot(TM) 64 位服务器 VM 混合模式

!javac -版本

javac 1.6.0_45

其次,我添加了环境变量 JAVA_HOME 并编辑了 PATH。

第三,我下载了 undocumentedmatlab.com 提供的自定义 CellEditor 类:LookupFieldCellEditor.zip,其中包含 .java 和 .class 文件。http://bit.ly/aiHumG

所以现在我想我已经做了一切必要的事情来开始融合 Matlab 和 Java 来定制我的 uitable。一开始,我只是复制了书中的主要思想:

mtable = uitable;
set(mtable,'ColumnEditable', [true, true]);
fieldsHashtable = java.util.Hashtable;
fieldsHashtable.put('Meat',{'steak','veal'}, 1.99);
fieldsHashtable.put('Vegetables',{'Salad','Lettuce'} , 2.50);
jtable.getColumnModel.getColumn(1).setCellEditor(ed);

令人惊讶的是,这不起作用。错误信息:

No method 'put' with matching signature found for class 'java.util.Hashtable'.

我已经搜索了一段时间并尝试了不同的东西来让它工作(比如使用哈希表的键,尝试不同类型的输入等),但我认为由于缺乏理解,我遗漏了一些一般性的东西。

谢谢你的期待!

4

1 回答 1

0

我认为这是通常的

put(key, value)

你在叫它

put(key, something, value)

考虑使用其他数据结构。

put({key,something},value);
put(key,{something,value});

或使用 2 张桌子。

于 2014-10-30T15:01:59.380 回答