Foro sobre Java SE > Como dar tamaño a columnas JTable
Si quieres darle un tamaño fijo e idéntico a cada columna, puedes hacer ésto:
TableColumnModel columnModel = tabla.getColumnModel();
for (int i = 0; i < columnModel.getColumnCount(); i++) {
columnModel.getColumn(i).setPreferredWidth(200);
}
Si lo que quieres es darle un tamaño diferente a cada columna, solo tienes que escribir más código:
TableColumnModel columnModel = tabla.getColumnModel();
columnModel.getColumn(2).setPreferredWidth(200);
columnModel.getColumn(4).setPreferredWidth(100);
Y así sucesivamente.
ohhhh siiii me salio queria darle tamaño fijo a las columnassss muchisimasss graciasss choces te lo agradesco pegue exactamente el mismo codigo y salio saludos =)
Hola Se muy bien tu aporte. Muchas gracias por compartirlo. Una duda, en que parte lo agrego:
ableColumnModel columnModel = tabla.getColumnModel();
columnModel.getColumn(2).setPreferredWidth(200);
columnModel.getColumn(4).setPreferredWidth(100);
Saludos. Y nuevamente muchas gracias.
Lo colocas en el constructor del frame donde esta la tabla
Solo basta con identificar el nombre de tu variable JTable. En mi caso es listaFinal.
listaFinal.getColumnModel().getColumn(
indexColumna).setMaxWidth(
anchoPixeles);
¿Cómo fijo la columna que no se mueva para ningun lado?
jTable.getTableHeader().setReorderingAllowed(false);
donde jTable es una instancia de JTable
https://docs.oracle.com/javase/8/docs/api/javax/swing/table/JTableHeader.html#reorderingAllowed
Disculpen, una pregunta: ¿cómo puedo hacer que un campo ocupe varias columnas? Algo así como un título general de varias celdas.
Y otra más: ¿puedo tener doble encabezado? es decir, debajo del campo como título (meses), tener los nombres de cada mes, uno en cada celda (|Ene|, |Feb|,...), funcionando éstos últimos como nombres de campos.
Saludos.
Hola amigos que tal?tengo una consulta con urgencia...el tema es el siguiente:
Tengo una JTable dinámica que me lista varias tablas por eso las columnas varían de 3 4 hasta 15 y con el ancho automático salen muy juntas y mi scrllpane horizontal no sale...he estado informándome y para darle formato a las celdas debo poner esta linea:
MiTabla.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
poniendo esa linea mi scrollpane horizontal aparece pero las columnas están muy pequeñas quiero darle tamaño fijo para que se vea ordenado espero puedan ayudarme saludos.