简体   繁体   English

DefaultTableModel中心文本

[英]DefaultTableModel center text

I have this code wherein I am inserting string data dynamically to JTable as Object type data. 我有这段代码,其中我将字符串数据作为对象类型数据动态插入到JTable中。 I want to align the data inserted to table to center. 我想将插入到表中的数据对齐到中心。 Please need help in this. 请在这方面需要帮助。

Here goes my code: 这是我的代码:

DefaultTableModel dm = new DefaultTableModel();
dm.addColumn("Product ID");
dm.addColumn("Product Name");

dm.addColumn("Price");
dm.addColumn("Unit");      

DefaultTableCellRenderer centerRenderer = new DefaultTableCellRenderer();
centerRenderer.setHorizontalAlignment( JLabel.CENTER );
jTable1.setDefaultRenderer(String.class, centerRenderer);                  

for(ProductBean cu:m){

        Object o[] = new Object[4];
        o[0]=cu.getProid();
        o[1]=cu.getPronm();

        o[2]=cu.getPrice();
        o[3]=cu.getUnit();

        dm.addRow(o);       
}
jTable1.setModel(dm);

Because you are adding renderer only to a String.class but your data is Object (possibly number etc) 因为您仅将渲染器添加到String.class,但是您的数据是Object(可能是数字等)

Change 更改

jTable1.setDefaultRenderer(String.class, centerRenderer);

to

jTable1.setDefaultRenderer(Object.class, centerRenderer);

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM