How to change horizontal alignment of column names in UITable

I know I can use the uistyle function to change the horizontal alignment of text of each cell of an UITable. But I am struggling to change the alignment of column names. I want the column names to be 'centered' but they are always aligned 'left'.
I have 2 code examples with a little bit different behaviour.
Example A
d = {'Male',52,true;'Male',40,true;'Female',25,false};
f=figure;
uit=uitable(f);
uit.Data = d;
Example B
d = {'Male',52,true;'Male',40,true;'Female',25,false};
f=uifigure;
uit=uitable(f);
uit.Data = d;
In example A I always get a table with centered column names, in example B I always get a table with column names left aligned. In both examples I don't know how to change the alignment. But I only need a solution for example B because in my new work I have to use uifigures instead of figures.

 Accepted Answer

Use uistyle to add alignment to the uitable -
d = {'Male',52,true;'Male',40,true;'Female',25,false};
f = uifigure;
uit = uitable(f);
uit.Data = d;
s = uistyle('HorizontalAlignment','center');
addStyle(uit,s,'table','')

3 Comments

with uistyle it is possible to change the alignment of the "normal" cells of the table but the alignment of the column names remains "left"
Center justification of uitable column names is not possible.
There is a workaround which you can try - Refer to this Answer
Thanks for the hint to this workaround. I have just read it and I think this will work but I haven't tried it yet.
And thanks for investigating my problems.

Sign in to comment.

More Answers (0)

Categories

Find more on Develop Apps Programmatically in Help Center and File Exchange

Products

Release

R2022b

Asked:

on 13 Jul 2023

Commented:

on 14 Jul 2023

Community Treasure Hunt

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

Start Hunting!