访问`uitable`的左上角

Accessing top left corner of `uitable`

uitable 中,我想访问行标签上方和列标签左侧的单元格。我想在那个区域放一些文字。这可以做到吗?

简短的回答是肯定的,但这有点痛苦。您可以添加文本 uicontrol 并将其放置在适当的位置。

一个功能示例:

% Dummy figure and table
f = figure;
d = gallery('integerdata',100,[10 3],0);
t = uitable(f,'Data',d,'ColumnWidth',{50});

% Add text uicontrol and position appropriately
txt = uicontrol( ...
    'Style', 'text', ...
    'BackgroundColor', 'magenta', ...
    'String', 'hi', ...
    'Units', 'Pixels', ...
    'Position', [21 300 32 19] ...
    );

这给了我们以下内容:

话虽如此,这不是一个非常可靠的选择,并且根据需要进行定位有点麻烦。文本 uicontrol 也没有记录的垂直对齐方式 属性;你必须利用底层 Java 来这样做(或其他一些解决方法)。

由于 MATLAB 的大部分图形系统内置于 Java,您很可能可以在此处访问基础 Java 并更稳健地修改 table。我不熟悉这种方法,所以我现在不能说。