uitable formatting (cell borders, color,comma style)
Afficher commentaires plus anciens
Hello,
Questions on uitable:
1) how to add cell borders on the table(data area)? I tried to use findjobj, but not sure which one to call in here http://www.mathworks.com/matlabcentral/fileexchange/14317
2) how to add color on column and row header(not the BackgroundColor/ForegroundColor), if it is possible.
3) how to change data format, so instead of 2e+04, I prefer 20,000 (the comma style)
This one already found a reference. http://www.mathworks.com/support/solutions/en/data/1-35XMQ9/?product=ML&solution=1-35XMQ9 And to align numbers in the table, refer to http://www.mathworks.com/matlabcentral/answers/2928.
Anyone knows how to code all that? Thanks in advance!
Réponse acceptée
Plus de réponses (2)
Babak
le 13 Août 2012
1 vote
Open the GUI with GUIDE first, then double click on the table. A window named property inspector will open up.
Property inspector for uitable has a few options like "column editable". If you click ont he right side of this option, a new window named "Table Property Editor" opens up.
In the forth pane of this window you can setup the colors.
In the first pane named "columns" you can see the columns you have created (or if you have not yet created any column you can start creating them here) there is a place where it says "Format" where if you click on the optionsyou can change the data type of the data you put in the columns.you can even create a custom data type.
Hope that helps but I don't understand why one needs to add grid in the cells of the table and never heard of it.
4 commentaires
Zoe Zhang
le 13 Août 2012
Babak
le 13 Août 2012
Hi Zoe, Here is an example from MATLAB's documentation: Pay attention to columnformat logical for the format of the data in the table. You can create a similar table propert named: "BackgroundColor" and then set the background color of the cells with this option. Now I understand what you want to do with the borders of cells but I don't know how I never seen this option in GUIDE.
f = figure('Position',[100 100 400 150]);
dat = {6.125, 456.3457, true, 'Fixed';...
6.75, 510.2342, false, 'Adjustable';...
7, 658.2, false, 'Fixed';};
columnname = {'Rate', 'Amount', 'Available', 'Fixed/Adj'};
columnformat = {'numeric', 'bank', 'logical', {'Fixed' 'Adjustable'}};
columneditable = [false false true true];
t = uitable('Units','normalized','Position',...
[0.1 0.1 0.9 0.9], 'Data', dat,...
'ColumnName', columnname,...
'ColumnFormat', columnformat,...
'ColumnEditable', columneditable,...
'RowName',[]);
Zoe Zhang
le 13 Août 2012
Azzi Abdelmalek
le 13 Août 2012
% h=uitable(...)
to set a color
set(t,'BackgroundColor',[.8 .5 .9],'ForegroundColor',[0 1 0]);
%[0 1 0] RGB color
2 commentaires
Zoe Zhang
le 13 Août 2012
Himanshu Verma
le 19 Mai 2020
Zoe Zhang, did you find any solution to the above question you've asked? I need to change the font color of each row with different colors without using 'uistyle' and 'addStyle'. Also, html code doesn't seem to be working with uifigure (works with figure);
Catégories
En savoir plus sur App Building dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!