Clear Filters
Clear Filters

How to change horizontal alignment of column names in UITable

32 views (last 30 days)
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

Dyuman Joshi
Dyuman Joshi on 13 Jul 2023
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
Dyuman Joshi
Dyuman Joshi on 13 Jul 2023
Edited: Dyuman Joshi on 14 Jul 2023
Center justification of uitable column names is not possible.
There is a workaround which you can try - Refer to this Answer
Michael
Michael on 14 Jul 2023
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 uifigure-Based Apps in Help Center and File Exchange

Products


Release

R2022b

Community Treasure Hunt

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

Start Hunting!