这里面包含了一百多个JAVA源文件

源代码在线查看: e965. listening for changes to the rows and columns of a jtable component.txt

软件大小: 551 K
上传用户: maple_78
关键词: JAVA
下载地址: 免注册下载 普通下载 VIP

相关代码

				This example demonstrates how to detect row and columns being added, deleted, or changed in a table component. To listen for these events, a listener must be added to the JTable's table model. Note: When a column is added, the type of the event is UPDATE. 
				    
				table.getModel().addTableModelListener(new MyTableModelListener(table));
				    
				    public class MyTableModelListener implements TableModelListener {
				        JTable table;
				    
				        // It is necessary to keep the table since it is not possible
				        // to determine the table from the event's source
				        MyTableModelListener(JTable table) {
				            this.table = table;
				        }
				    
				        public void tableChanged(TableModelEvent e) {
				            int firstRow = e.getFirstRow();
				            int lastRow = e.getLastRow();
				            int mColIndex = e.getColumn();
				    
				            switch (e.getType()) {
				              case TableModelEvent.INSERT:
				                // The inserted rows are in the range [firstRow, lastRow]
				                for (int r=firstRow; r				                    // Row r was inserted
				                }
				                break;
				              case TableModelEvent.UPDATE:
				                if (firstRow == TableModelEvent.HEADER_ROW) {
				                    if (mColIndex == TableModelEvent.ALL_COLUMNS) {
				                        // A column was added
				                    } else {
				                        // Column mColIndex in header changed
				                    }
				                } else {
				                    // The rows in the range [firstRow, lastRow] changed
				                    for (int r=firstRow; r				                        // Row r was changed
				    
				                        if (mColIndex == TableModelEvent.ALL_COLUMNS) {
				                            // All columns in the range of rows have changed
				                        } else {
				                            // Column mColIndex changed
				                        }
				                    }
				                }
				                break;
				              case TableModelEvent.DELETE:
				                // The rows in the range [firstRow, lastRow] changed
				                for (int r=firstRow; r				                    // Row r was deleted
				                }
				                break;
				            }
				        }
				    }
				
							

相关资源