выделить одну ячейку в таблице, созданной с помощью Guide - Matlab - PullRequest
2 голосов
/ 29 марта 2011

Я пытаюсь выделить или покрасить фон отдельной ячейки в таблице, созданной с помощью guide. Есть ли способ сделать это?

спасибо заранее.

1 Ответ

2 голосов
/ 29 марта 2011

Вы можете сделать это, поместив html-код в данные ячейки, на сайте MATLAB есть руководство с примером, но IMHO это не очень элегантный способ сделать это, поскольку он делает содержимое строкой и скрывает данные.Это делает любую последующую обработку данных очень неудобной, поскольку вы должны начать выделять HTML-код.

http://www.mathworks.com/support/solutions/en/data/1-D782JW/index.html?product=ML&solution=1-D782JW

Таким образом, содержимое ячейки заканчивается следующим образом:

<html><font color="blue">'my text'</font></html>

Итак, проработанный пример для пояснения комментариев, так как я понял, что в приведенном выше примере цвет текста, а не фона, как было запрошено.

scores=cell(7,10);
scores(3,4)={'<html><font bgcolor=#FF8800>my text</font></html>'}
f=figure
uit = uitable(f, 'Data', scores,'Units', 'normalized','Position', [0 0 1 1]);

Это создает массив результатов с одной вставленной HTML-ячейкой.,Когда вы создаете пользовательское свойство, вы устанавливаете свойство «Данные» для этого массива ячеек.Если вы уже создали свою таблицу с помощью направляющей, то у вас должен быть указатель на объект таблицы, и в этом случае вы должны иметь возможность использовать set

set(uitableHandle,'Data',scores);

Как я уже сказал, это немного грязно и неработать так же хорошо, поскольку он просто окрашивает фон текста, а не всю ячейку, но я думаю, что это лучшее, что вы получите, используя родные виджеты MATLAB GUI.

...