Nom des Colonnes dans une JTable
Je travaille sur un programme pour un petit magasin. Quand je clique sur le bouton "Rapport", il doit montrer un Tableau, comme ceci:
Noms de colonne "A", "B"..."N", doit être le nom des employés. Mais je ne peux pas comprendre comment.
Voici mon code:
public void Inform()
{
String[] employee;
String[] product[];
this.setLayout(null);
Inform=new JTable(nulo, employee.length);
model = new DefaultTableModel() {
private static final long serialVersionUID = 1L;
@Override
public int getColumnCount() {
return 1;
}
@Override
public boolean isCellEditable(int row, int col) {
return false;
}
@Override
public int getRowCount() {
return Inform.getRowCount();
}
};
headerTable = new JTable(model);
for (int i = 0; i < Inform.getRowCount(); i++)
headerTable.setValueAt(product[i], i, 0);
headerTable.setShowGrid(false);
headerTable.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
headerTable.setPreferredScrollableViewportSize(new Dimension(50, 0));
headerTable.getColumnModel().getColumn(0).setPreferredWidth(50);
scrollPane = new JScrollPane(Inform);
scrollPane.setRowHeaderView(headerTable);
scrollPane.setBounds(5,5,500,500);
scrollPane.setEnabled(false);
this.add(scrollPane);
}
Employés et produit variates selon la façon dont de nombreuses personnes se sont inscrites. nulo est le nombre de produits qui sont prêts à vendre.
s'il vous plaît apprendre conventions de nommage java et de s'y tenir
OriginalL'auteur aerojun | 2011-11-21
Vous devez vous connecter pour publier un commentaire.
Vous devez ajouter
getColumnName()
dans votre TableModel:Dans votre cas, cela peut être:
Et ici est un travail entièrement exemple:
Comment voulez-vous dire? Vous n'avez pas besoin d'appeler le
getColumnName()
elle est appelée automatiquement par la JTable et l'utilisationgetColumnCount()
pour voir combien de colonnes il y a dans le tableau.public int getColumnName(int index) { return employé[index]; } incompatibilité de Type: impossible de convertir de la Chaîne d'int
Oui,
getColumnName
doit retourner unString
j'ai mis à jour ma réponse. Vous devez utiliser@Overrides
dans un IDE pour voir de telles erreurs.public int getColumnCount() { return employé.longueur; } Déclenche une exception nullpointerexception
OriginalL'auteur Jonas
Voici l'exemple de l'oracle, site internet, vous pouvez charger les noms que vous voulez pour votre colonnes dans un tableau, puis passer le tableau de la
JTable
La table résultante ressemble à ceci:
Lien de tutoriel sur la JTables: http://docs.oracle.com/javase/tutorial/uiswing/components/table.html#data
Merci, mais ce n'est pas le modèle que je cherche. Je veux qu'il aime l'image que je montre ci-dessus.
ceci est un exemple de la façon d'ajouter les noms de colonne, l'image était juste pour vous montrer la colonne des noms ont été ajoutés correctement
OriginalL'auteur Hunter McMillen
Essayez ceci:
Je pense qu'il fait référence à cette approche: stackoverflow.com/a/17655044/4828060
OriginalL'auteur Guest
C'est plus une approche manuelle, mais cela fonctionne pour moi.
OriginalL'auteur Boheyga