巨大なデータ テーブルを適切な形式でロードするために JIDE グリッドを使用しています。私が JIDE グリッドを使用した主な理由は、フィルター処理と並べ替え機能が機能することでした。古い uitable にフックでき、設定が簡単なフィルター/ソーターが利用可能ですが、ほとんどの場合、数値ではなく字句でソートされます。これは、Matlab の基になるデータ クラスによるものだと思います。
これまでのところ、JIDE の組み込みフィルタリングはうまく機能しており、500x35 近くの混合データ型をロードすると、Matlab の古いバージョンの uitable よりも高速にロードされます。しかし、設定したいことが他にもいくつかありますが、JIDE のドキュメントには参照先が見つかりませんでした。
1)JIDE実装で行番号列を追加する方法を知っている人はいますか? (古い/新しい uitable 構成の行番号ヘッダーと同じように)。findobj と inspect (by Yair Altman) ユーティリティを使用してそれらを見つけてオンにしようとしましたが、それらが完全に欠落しているようです.または、何かが欠落しています!
2) 列のドロップダウンから [カスタム フィルター] を選択し、[等しい]、[等しくない]、または [より大きい] を選択すると、日付選択タブが表示されます。このタブを削除するにはどうすればよいですか。それが不可能または困難な場合、これらのオプションを削除するにはどうすればよいですか?
3) 最後に、グリッドに表示される小数点以下の桁数を設定するにはどうすればよいですか?
問題を再現するためのコード。
% calling old uitable for performance reasons
f1=figure;
[h_Old,containter] = uitable('v0','data',magic(5),'ColumnNames',{'A','B',...
'C','D','E'},'Position',[5 5 500 400],'Parent',f1);
set(h_Old,'Units','normalized','Editable',false);
% Anotherway: JIDE grids even faster in setting up uitable with huge data
data=num2cell(magic(5));
jtable=com.jidesoft.grid.SortableTable(data,{'A','B','C','D','E'});
theader = com.jidesoft.grid.AutoFilterTableHeader(jtable);
theader.setAutoFilterEnabled(true)
theader.setShowFilterName(true)
theader.setShowFilterIcon(true)
jtable.setTableHeader(theader)
jscroll = javax.swing.JScrollPane(jtable);
f2=figure;
[h_old_2,container_2] = javacomponent(jscroll,[5,5,500,400],f2)
set(container_2,'Units','norm');
お時間をいただきありがとうございます。