フィルターのクリア

How to change the color of uitable 'row-wise'?

35 ビュー (過去 30 日間)
Himanshu Verma
Himanshu Verma 2020 年 5 月 15 日
回答済み: Himanshu Verma 2020 年 8 月 26 日
I have a tool which plots data based on the user selection. The tool plots the line on 3 graphs and I've created uitable which displays the properties of the plotted line. I want to update the color of the text of the row according to the color of the line plotted. The table should get updated whenever a new line is plotted as well as the color of that one row only should change. How can I do that?
function tab_input(ui_table,cell_1a,cell_1b,cell_2,cell_3)
cell_1 = strcat(cell_1a,cell_1b,cell_1a);
existingData = get(ui_table,'Data');
tempData = {cell_1,cell_2,cell_3};
newData = [existingData;tempData];
set(ui_table,'Data',newData,'ForegroundColor',ci_color(cell_2));
end
In the above code, I want to append the table as well as, I want to change the textcolor of the current row only, whereas the color or the previous row (if any) should remain unaltered. Please suggest a workaround.

採用された回答

Himanshu Verma
Himanshu Verma 2020 年 8 月 26 日
I've found a workaround for this problem. Instead of changing the foreground, I'm changing the background. The background color of each row is saved in a matrix containing the RGB values of each row of the table. This matrix is passed as a 'BackgroundColor' argument while displaying the uitable.

その他の回答 (1 件)

Jyotsna Talluri
Jyotsna Talluri 2020 年 5 月 18 日
編集済み: Jyotsna Talluri 2020 年 5 月 18 日
You can make use of uistyle and addstyle functions
Refer to the documnetation link below
  4 件のコメント
Himanshu Verma
Himanshu Verma 2020 年 5 月 18 日
I checked it and tried at my end. When I enter the following code:
uitable('Data',{'<html><body text color="#FF0000">Hello</body></html>'});
We get a table with a cell in which 'Hello' is written in red color.
I already have a uifigure open and a uitable has been built as its child. When I try to enter the data in this table as:
uitable(fig,'Data',{'<html><body text color="#FF0000">Hello</body></html>'});
It does not recognise the html code but gives this as output:
What could be the issue?
Himanshu Verma
Himanshu Verma 2020 年 5 月 18 日
As an alternative, is it possible to change the background color of each row? It should work like whenever I add a new row, the background color of that row should change as per the value of decision variable (cell_2 in this case).

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMigrate GUIDE Apps についてさらに検索

製品


リリース

R2019a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by