import com.zfqjava.swing.AbstractDataGridModel; import com.zfqjava.swing.DataGridModel; import com.zfqjava.swing.DefaultDataGridModel; import com.zfqjava.swing.JBean; import com.zfqjava.swing.JDataGrid; import com.zfqjava.swing.JDataGridBean; import com.zfqjava.swing.cell.CellStyle; import java.awt.Color; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.SwingUtilities; import javax.swing.text.SimpleAttributeSet; import javax.swing.text.StyleConstants; /* * RowColumnStyleDemo.java * * Created on 2007Äê7ÔÂ30ÈÕ, ÏÂÎç2:46 * * To change this template, choose Tools | Template Manager * and open the template in the editor. */ /** * * @author Fuqiang Zhao */ public class RowColumnStyleDemo extends JDataGridBean { /** Creates a new instance of RowColumnStyleDemo */ public RowColumnStyleDemo() { } private void configure() { final JDataGrid dataGrid = getDataGrid(); dataGrid.setModel(createModel()); dataGrid.setRowHeight(0, 40); final JButton a = new JButton("Restore Model..."); a.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { dataGrid.setModel(createModel()); } }); getToolBar(JDataGridBean.MAIN_TOOLBAR).add(a); } protected DataGridModel createModel() { AbstractDataGridModel model = new DefaultDataGridModel(99, 26); // demo attributes SimpleAttributeSet attr = new SimpleAttributeSet(); // 0 row demo color attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.red); StyleConstants.setBackground(attr, Color.red); StyleConstants.setAlignment(attr, StyleConstants.ALIGN_CENTER); CellStyle.setVerticalAlignment(attr, CellStyle.ALIGN_TOP); model.setRowAttributes(attr, 0); model.setRowHeaderAttributes(attr, 0); attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.green); StyleConstants.setBackground(attr, Color.green); StyleConstants.setAlignment(attr, StyleConstants.ALIGN_RIGHT); CellStyle.setVerticalAlignment(attr, CellStyle.ALIGN_CENTER); model.setRowAttributes(attr, 1); model.setRowHeaderAttributes(attr, 1); model.setRowEditable(false, 1); attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.blue); StyleConstants.setBackground(attr, Color.blue); StyleConstants.setAlignment(attr, StyleConstants.ALIGN_RIGHT); CellStyle.setVerticalAlignment(attr, CellStyle.ALIGN_BOTTOM); model.setRowAttributes(attr, 2); model.setRowHeaderAttributes(attr, 2); attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.yellow); StyleConstants.setBackground(attr, Color.yellow); StyleConstants.setAlignment(attr, StyleConstants.ALIGN_LEFT); CellStyle.setVerticalAlignment(attr, CellStyle.ALIGN_BOTTOM); model.setColumnAttributes(attr, 3); model.setColumnHeaderAttributes(attr, 3); attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.pink); StyleConstants.setBackground(attr, Color.pink); model.setColumnAttributes(attr, 4); model.setColumnHeaderAttributes(attr, 4); model.setColumnEditable(false, 4); attr = new SimpleAttributeSet(); // StyleConstants.setForeground(attr, Color.orange); StyleConstants.setBackground(attr, Color.orange); model.setColumnAttributes(attr, 5); model.setColumnHeaderAttributes(attr, 5); return model; } public static void main(String[] args) { final RowColumnStyleDemo demo = new RowColumnStyleDemo(); demo.setDefaultCloseOperation(JBean.EXIT_ON_CLOSE); SwingUtilities.invokeLater(new Runnable() { public void run() { demo.showFrame(); demo.getDataGrid().requestFocus(); } }); } }