기본적으로 나는 JTable
을 가지고 있으며이 JTabel
은 하나의 셀에 제품이 있고 그 다음 셀 바로 아래에 셀이 있습니다.JTabel 개별 셀 텍스트 정렬
제품 이름은 왼쪽에 맞춰야합니다. 제품 원가는 오른쪽에 맞추어야합니다.
저는 실제로 각 행의 다른 셀의 정렬이 무엇인지 신경 쓰지 않습니다.
그래서 개별 셀 또는 개별 행의 정렬을 설정해야합니다. 테이블의 정렬을 설정하는 방법과 열의 정렬을 설정하는 방법을 찾았지만 결코 행/개별 셀을 찾지 못했습니다.
sscce : Number
에 대한
public class Main extends JFrame{
public static void main(String args[]){
new Main();
}
public Main(){
super("Demo");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setExtendedState(MAXIMIZED_BOTH);
setVisible(true);
setLayout(new BorderLayout());
TableModel dataModel = new AbstractTableModel() {
Object rows[] = new Object[50];
public int getColumnCount(){return 1;}
public int getRowCount(){return rows.length;}
public Object getValueAt(int row, int col){
return rows[row];
}
public boolean isCellEditable(int row, int col){
return false;
}
public void setValueAt(Object value, int row, int col) {
rows[row] = value;
fireTableCellUpdated(row,0);
}
};
JTable receipt = new JTable(dataModel);
receipt.setBorder(BorderFactory.createEtchedBorder());
receipt.setShowGrid(false);
add(receipt,BorderLayout.CENTER);
for(int i = 0; i < 10; i+=2){
receipt.setValueAt("ProductNameHere",i,0);
receipt.setValueAt("Cost",i+1,0);
}
validate();
repaint();
}
}
사용자 정의'TableCellRenderer'을 설치하고, 적절한 셀에 대한 내부의'JLabel'에 정렬을 설정합니다. –
셀 렌더러 이전의 객체 값을 기준으로 [Default] 셀 링크 렌더러 – MadProgrammer
+1의 [sscce] (http://sscce.org/)에 대한 정렬을 변경합니다. – trashgod