我有一个6行和6列的uitable,我想以全屏模式显示这样做我可以改变列宽但我不能改变行高。
范围是可用矩形的大小,但它是只读属性。
答案 0 :(得分:1)
使用传统方法,改变行高的唯一可能性是调整'FontSize'
属性。
以下功能将为您提供全屏幕表格。您可以设置'ColumnWidth'
和'FontSize'
,直到它完全填满您的屏幕。
function fancyTable
columnwidth = { 1920/2 1920/2 };
FontSize = 135;
h = figure('units','normalized','Position',[0 0 1 1],...
'numbertitle','off','MenuBar','none');
defaultData = rand(5,2);
uitable(h,'Units','normalized','Position',[0 0 1 1],...
'Data', defaultData,...
'ColumnName', [],'RowName',[],...
'ColumnWidth', columnwidth,...
'FontSize', FontSize,...
'ColumnEditable', [false false],...
'ColumnFormat', {'numeric' , 'numeric'});
end
我没有看到一个简单的解决方案,可以独立于字体大小更改行高。
但undocumented Matlab有一些想法。
” 的 7。 JIDE自定义 ... 同样,本节介绍了如何使用JIDE将相邻单元格合并在一起: “
可能是一个繁琐的解决方法,并且没有代码示例。
答案 1 :(得分:0)
你可以,例如使用文件交换中的findjobj
实用程序。
它将使您进入表的基础java对象,其位置如下:
t = uitable(...);
scrollPane = findjobj(t);
% not 100% sure about this, but there'll be a `UITablePeer` object somewhere within that scrollPane
jTable = scrollPane.getComponent(0);
此jTable
将继承http://docs.oracle.com/javase/7/docs/api/javax/swing/JTable.html
setRowHeight
方法