Determine row height uitable

25 visualizaciones (últimos 30 días)
Jim Hokanson
Jim Hokanson el 20 de Dic. de 2011
Editada: Marius Rusu el 6 de Oct. de 2017
Is it possible to determine the height of a row in a uitable? I'd like to change the size of my table to accommodate the # of rows I am displaying. I'd prefer to do this without resorting to getting the java object ...

Respuesta aceptada

Yair Altman
Yair Altman el 20 de Dic. de 2011
Use findjobj to get the uitable's underlying Java JTable reference, and then simply do:
height = jtable.getRowHeight();
or if you are using different heights for different rows, then:
heights = jtable.getRowHeights();
More on stuff like this in my Matlab-Java programming book.

Más respuestas (2)

Marius Rusu
Marius Rusu el 6 de Oct. de 2017
Editada: Marius Rusu el 6 de Oct. de 2017
Hi,
I had some troubles achieving this but in the end I managed to make it work. Just to share with others (PS. you have to replace hObject with the handle to your object):
jScrollPane = findjobj(hObject);
jtable = jScrollPane.getViewport.getView;
height = jtable.getRowHeight()
jtable.setRowHeight(height*2)
Marius

Walter Roberson
Walter Roberson el 20 de Dic. de 2011
If you are talking about a sort of equivalent to Extent for a single cell or single row, then No, there is no (documented) MATLAB mechanism for determining that. There is an Extent for the uitable as a whole, and a Position for the uitable, but if the Extent is bigger than the Position then one or more rows is not visible (and there is a scroll-bar to access it.) I was not able to determine the number of visible rows.
Now, doing this in Java is probably a different matter. See undocumentedmatlab.com for all kinds of goodies.

Categorías

Más información sobre Migrate GUIDE Apps en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by