在适当的情况下更改字体颜色和背景颜色

时间:2019-09-13 07:41:19

标签: matlab matlab-guide matlab-uitable

我有一个显示某些数据的uitable。当值大于1时,我希望数字为红色粗体。

此代码为我提供了正确的输出:

data(indx_red(:, n), n) = strcat(...
'<html><span style="color: #FF0000; font-weight: bold;">', ...
data(indx_red(:, n), n), ...
'</span></html>');

但是,当数字大于5时,我希望文本为粗体红色,而单元格的背景颜色为蓝色。因此,我对下面的代码进行了调整,但是当我运行此代码时,表格中单元格的背景色不会改变。

data(indx_red(:, n), n) = strcat(...
'<html><span style="color: #FF0000; font-weight: bold; background-color:powderblue;">', ...
data(indx_red(:, n), n), ...
'</span></html>');

我也尝试过使用HTML表。我已与一些HTML在线编辑器一起检查过HTML部分,以确保输出正确。 MATLAB中是否有某些东西可以阻止您为表格中单元格的背景着色?

如何获得一个蓝色背景,粗体,红色字体的单元格?

data(indx_blue(:, n), n) = strcat(...
' <html><table border=0 width=50><tr><td style=''text-align: right; background-color:#99FF99''><b><font color=''#009933''>', ...
data(indx_blue(:, n), n), ...
'</font></b></td></tr></table></html>');

1 个答案:

答案 0 :(得分:2)

似乎不支持命名颜色。但是,如果将background-color设置为十六进制值,则它似乎可以工作:

data = uitable;
data.Data{1,1} = '<html><div style="color: #FF0000; font-weight: bold; background-color:#b0e0e6;">11</div></html>';

现在,这只会为该类型的小区域的背景着色。提供尺寸说明可以帮助设计整个单元格区域:

data.Data{2,2} = '<html><div style="width:90px;height:12px;color: #FF0000; font-weight: bold; background-color:#b0e0e6;">11</div></html>'