Gui Table With Editable Column Names

Hi All
I am making a GUI that has a table in it. I want the user to be able to click on the column names and edit them just like they can manually edit data in the table. However, using guide and the property inspector I cant figure out a way to make the column headers editable. Has anyone done this before/ know how to do this. Thanks
PS. I know I could make an editable textbox separately and use that to feed names to the column headers but my gui is tight on space and I want to avoid doing this if at all possible.

Antworten (3)

Matt Fig
Matt Fig am 10 Aug. 2012

1 Stimme

You could do something like this to save room:
function [S] = GUI_table()
% Save space and allow user to change column names.
S.fh = figure('units','pixels',...
'position',[400 400 380 200],...
'menubar','none',...
'name','GUI_table',...
'resize','off',...
'numbertitle','off');
S.tb = uitable('position',[5 5 370 190],...
'columnwidth',{80,80,80,80},...
'columnname',{'A','B','C','D'},...
'rowname',{'1','2','3','4','5','6'});
S.pb(1) = uicontrol('style','push',...
'units','pix',...
'position',[10 172 20 20],...
'string','?',...
'fontsize',10,...
'fontweight','bold',...
'callback',{@pb1_call},...
'tooltip','Change Column Names',...
'backgroundcolor',[.1 .25 .25],...
'foregroundcolor','w');
function [] = pb1_call(varargin)
% Callback for the pushbutton.
prompt={'Column 1','Column 2','Column 3','Column 4'};
name='Enter column names';
numlines=1;
defaultanswer=get(S.tb,'columnname');
options.Resize='on';
options.WindowStyle='modal';
options.Interpreter='tex';
A=inputdlg(prompt,name,numlines,defaultanswer,options);
set(S.tb,'columnname',A)
end
end
Sean de Wolski
Sean de Wolski am 10 Aug. 2012
Bearbeitet: Sean de Wolski am 10 Aug. 2012

0 Stimmen

No this is not possible. Your workaround with an edit box sounds like a good option.
Ahmed raafat
Ahmed raafat am 7 Mai 2017

0 Stimmen

set(handles.uitable_tag,'ColumnName',{'any' 'name' 'you' 'want'})

1 Kommentar

Walter Roberson
Walter Roberson am 8 Mai 2017
That changes the column names through the program, but does not give the user the ability to click on the column names and edit them.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Interactive Control and Callbacks finden Sie in Hilfe-Center und File Exchange

Gefragt:

am 10 Aug. 2012

Community Treasure Hunt

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

Start Hunting!

Translated by