UItable CellSelectionCallback
22 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Eugene Kogan
el 13 de Mayo de 2011
How do I get the position of a call when I select it in a uitable? I know you can associate a CellSelectionCallback with a table, but what is the property to pull? A similar question two years ago said the proper field is Indices but this doesn't seem to work for me (Note, I am using R2008a). I would be expecting get(t,'Indices') to do the trick for me (t is the table), but such a field isn't recognized.
0 comentarios
Respuesta aceptada
Walter Roberson
el 13 de Mayo de 2011
The CellSelectionCallback will be passed a minimum of two parameters, the first of which will be the uitable handle, and the second of which is the event data, which people commonly program to be received into the variable named "event". For CellSelectionCallback, event will be a structure which will have one field named "Indices" and it is that you want to look at.
For example,
function GasPricesTable_Selection_CB(src, event)
selected_cells = event.Indices;
5 comentarios
Walter Roberson
el 26 de Jun. de 2011
Not sure, Eugene might simply have Accepted the answer: that bumps it.
James Ang
el 18 de Abr. de 2016
Editada: James Ang
el 18 de Abr. de 2016
This solves my problem.... maybe it'll help some of you guys..
1) right click on the table, select 'CellSelectionCallback'. An automated function will be generated for you (displayed in the property Inspector - also right click the table to select).
E.g mine is "@(hObject,eventdata)NmodeDataRead_v10('data_uitable_CellSelectionCallback',hObject,eventdata,guidata(hObject))'"
2) This function will be added to your codes.
function data_uitable_CellSelectionCallback(hObject, eventdata, handles)
% hObject handle to data_uitable (see GCBO)
% eventdata structure with the following fields (see MATLAB.UI.CONTROL.TABLE)
% Indices: row and column indices of the cell(s) currently selecteds
% handles structure with handles and user data (see GUIDATA)
% disp(eventdata)
handles.datatable_row = eventdata.Indices(1);
handles.datatable_col = eventdata.Indices(2);
guidata(hObject, handles);
Just add the lines of codes above to get the indices...
hope this helps.
Más respuestas (0)
Ver también
Categorías
Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!