App Designer: Format headings on uitable

16 vues (au cours des 30 derniers jours)
Samuel Thompson
Samuel Thompson le 9 Jan 2018
Modifié(e) : Eric Delgado le 19 Juin 2023
The table below is a uitable created within App Designer that has been modified using the following code:
app.UITable2.ColumnName = {'node iD', 'X', 'Y', 'Z'};
app.UITable2.ColumnWidth = {80, 80, 80, 80};
nodeindex = (1:1:length(app.D.Coord))';
nodeid = num2cell(nodeindex);
Xcoord = num2cell(app.D.Coord(1,:)');
Ycoord = num2cell(app.D.Coord(2,:)');
Zcoord = num2cell(app.D.Coord(3,:)');
app.UITable2.Data = [nodeid Xcoord Ycoord Zcoord];
I wish to do two things:
  1. Format the column headers (modify text font and weight, text colour and background)
  2. Centrally align the data within the table.
Any help would be appreciated. I have searched through the documentation and other similar answers but have found nothing as of yet that seems to work.
Thanks in advance, Sam

Réponses (2)

Eric Delgado
Eric Delgado le 19 Juin 2023
Modifié(e) : Eric Delgado le 19 Juin 2023
I am not sure if it is still an issue to you guys, but I wrote ccTools, a lib that turns possible the customization of the header of the uitable (and a lot of more things, like a new filterable table class). I hope it helps! :)
f = uifigure;
g = uigridlayout(f, 'RowHeight', {'1x'}, 'ColumnWidth', {'1x'});
t = uitable(g, 'Data', table("#"+string((1:100)'), (1:100)', (1:100)'+.1, (1:100)'+.001, (1:100)'+.00001, randn(100,1)));
drawnow
ccTools.compCustomization(t, 'backgroundHeaderColor', '#52555c', ...
'borderRadius', '10px', ...
'fontFamily', 'Times New Roman', ...
'color', 'white');

ES
ES le 9 Jan 2018
Modifié(e) : ES le 9 Jan 2018
You can use html to format the headings, values in table!
You may start here https://undocumentedmatlab.com/blog/gui-formatting-using-html
  3 commentaires
Ramiro Massol
Ramiro Massol le 29 Jan 2021
HTML is not yet recognized in AppDesigner R2020b, so no way yet to format column/row headers in uitable.
Adam Danz
Adam Danz le 25 Mai 2021
This answer shows how to create a UITable within a UIFigure (eg, app designer) that appears to have formatted column names. It moves the column names into the first row of the data and the applies formatting to make it appear as though the first line of data is actually a table header. The same logica can be applied to row names.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Develop Apps Using App Designer dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by