📄 comparepanel.java
字号:
package com.icbcsdc.ddlexp.ui.rightPanel;
import java.awt.BorderLayout;
import java.awt.Font;
import java.util.Enumeration;
import java.util.Hashtable;
import javax.swing.BorderFactory;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.border.Border;
import javax.swing.table.TableColumn;
import com.icbcsdc.ddlexp.pub.xml.nodeinfo.OracleRole;
import com.icbcsdc.ddlexp.pub.xml.nodeinfo.PropertyChanged;
import com.icbcsdc.ddlexp.pub.xml.nodeinfo.XMLNode;
import com.icbcsdc.ddlexp.ui.TreeFrame;
import com.icbcsdc.ddlexp.ui.model.NoEdit_TableModel;
/**
* @author zhangyc
*
* To change this generated comment edit the template variable "typecomment":
* Window>Preferences>Java>Templates.
* To enable and disable the creation of type comments go to
* Window>Preferences>Java>Code Generation.
*/
public class ComparePanel extends RightPanel {
private BorderLayout borderLayout = new BorderLayout();
private JLabel labelTitle =new JLabel();
private JTable jTable_Show = new JTable(); //显示内容的Table
private String[] columnName = null; //Table列的列头
private int[] colLength = new int[3]; //Table列的宽度
private static final byte COL_1 = 0;
private static final byte COL_2 = 1;
private static final byte COL_3 = 2;
private NoEdit_TableModel tableModel = null; //Table Model
private String[][] showObj = null;
private JScrollPane jScrollPane = new JScrollPane();
private Border border;
private JPanel contentPane = new JPanel();
private String title = "";
/**
* Constructor for ComparePanel.
* @param parent
* @param pvnode
*/
public ComparePanel(TreeFrame parent, XMLNode node) {
super(parent, node);
this.title = XMLNode.type2String(node.getType())+":"+node.getName();
//System.out.println("ComparePanel():"+1);
columnName = new String[3];
columnName[COL_1] = "Property Name";
columnName[COL_2] = "Source Value";
columnName[COL_3] = "Dest Value";
//System.out.println("ComparePanel():"+2);
colLength[COL_1] = 450;
colLength[COL_2] = 700;
colLength[COL_3] = 700;
//System.out.println("ComparePanel():"+3);
Hashtable array = node.getChangedProperties();
//System.out.println("array.size:"+array.size());
if(array.size() > 0){
this.showObj = new String[array.size()][columnName.length];
Enumeration enum=array.elements();
int i=0;
while(enum.hasMoreElements()){
PropertyChanged property=(PropertyChanged)enum.nextElement();
//System.out.println("No. "+i+" property: "+property.getName()+"/"+property.getOldValue()+"/"+property.getNewValue());
showObj[i][COL_1] = property.getName();
showObj[i][COL_2] = property.getOldValue();
showObj[i][COL_3] = property.getNewValue();
i++;
}
}
try {
jbInit();
}catch(Exception ex) {
ex.printStackTrace();
}
}
void jbInit() throws Exception {
contentPane.setLayout(null);
labelTitle.setBounds(TITLE_START_HOR,TITLE_START_VER,RIGHT_WIDTH,TITLE_HEIGHT);
labelTitle.setFont(new Font("华文中宋",Font.PLAIN,36));
labelTitle.setHorizontalAlignment(javax.swing.SwingConstants.CENTER);
jScrollPane.setBounds(START_HOR,START_VER,RIGHT_WIDTH-START_HOR*2,RIGHT_HEIGHT_CONTENT-START_VER - SHOW_INTERVAL);
tableModel = new NoEdit_TableModel(this.columnName);
jTable_Show.setModel(this.tableModel);
jScrollPane.setViewportView(jTable_Show);
contentPane.add(labelTitle,null);
contentPane.add(jScrollPane,null);
this.setLayout(borderLayout);
this.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));
this.add(contentPane,BorderLayout.CENTER);
this.refresh();
}
/**
* @see com.icbcsdc.ddlexp.ui.rightPanel.RightPanel#getJPanel()
*/
public JPanel getJPanel() {
return this;
}
/**
* @see com.icbcsdc.ddlexp.ui.rightPanel.RightPanel#open()
*/
public void open() {
}
/**
* @see com.icbcsdc.ddlexp.ui.rightPanel.RightPanel#close()
*/
public void close() {
}
/**
* @see com.icbcsdc.ddlexp.ui.rightPanel.RightPanel#expDDL()
*/
public void expDDL() {
}
public void refresh(){
labelTitle.setText(title);
this.tableModel.setData(this.showObj);
this.setTableColumnLength();
}
private void setTableColumnLength(){
TableColumn column = null;
for (int i = 0; i < this.columnName.length; i++) {
column = this.jTable_Show.getColumnModel().getColumn(i);
switch(i){
case(COL_1):
column.setPreferredWidth(colLength[COL_1]);
break;
case(COL_2):
column.setPreferredWidth(colLength[COL_2]);
break;
case(COL_3):
column.setPreferredWidth(colLength[COL_3]);
break;
default:
break;
}
}
}
/**
* @see com.icbcsdc.ddlexp.ui.rightPanel.RightPanel#setSelect()
*/
public void setSelect() {
}
public static void main(String[] args) {
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -