package Frame;
|
import java.awt.BorderLayout;
|
import java.awt.Container;
|
import java.awt.event.ActionEvent;
|
import java.awt.event.ActionListener;
|
import java.awt.event.KeyEvent;
|
import java.awt.event.KeyListener;
|
import java.util.Iterator;
|
import java.util.Vector;
|
import javax.swing.Box;
|
import javax.swing.ImageIcon;
|
import javax.swing.JPanel;
|
import javax.swing.JScrollPane;
|
import javax.swing.JTable;
|
import javax.swing.JTextField;
|
import javax.swing.table.DefaultTableModel;
|
import ColorAndFont.English;
|
import ColorAndFont.NothJPanel;
|
import ColorAndFont.UIColor;
|
import ColorAndFont.buttonTitle;
|
import PbuliClass.JButtonModel;
|
import PbuliClass.OutButton;
|
import PbuliClass.ShowMessage;
|
import PbuliClass.Systems;
|
import PbuliClass.greateTables;
|
import PbuliClass.jinternalFrame;
|
import anchor.Anchor;
|
import anchor.Anchor_Dell;
|
import anchor.Dell_cengao;
|
import tbDataModel.Tb_cengzu;
|
import tbDataModel_Dell.Dell_tbcengzu;
|
@SuppressWarnings("rawtypes")
|
public class SuanfaTable extends jinternalFrame{
|
|
/**
|
*
|
*/
|
private static final long serialVersionUID = 1L;
|
|
NothJPanel northJpanel=null;//±±²¿Ãæ°å
|
JPanel centerJpanel=null;//Öв¿Ãæ°å
|
JButtonModel jbut;//°´Å¥Ä£ÐÍ
|
JTextField searchFileld=null;//ËÑË÷Îı¾¿ò
|
JButtonModel search=null;//ËÑË÷°´Å¥
|
JButtonModel shuaxin=null;//ˢа´Å¥
|
JTable table=null;//ÉêÃ÷±í¸ñ
|
Vector rowData=null;
|
DefaultTableModel tableModel;//±í¸ñÄ£ÐÍ
|
int tagnum;//±í¸ñ×ÜÐÐÊý
|
Container rq;
|
JScrollPane gd;
|
|
public SuanfaTable() {
|
rowData=new Vector();
|
String title="Ëã·¨ÅäÖñí¸ñ";
|
if(Systems.sys().getLanguage().equals("English")) {
|
title="SuanFa Table";
|
}
|
this.setTitle(title);
|
this.setFrameIcon(new ImageIcon("image/icon/systemicon.png"));//ÉèÖô°Ìåͼ±ê
|
rq=getContentPane();//»ñÈ¡ÈÝÆ÷
|
rq.setLayout(new BorderLayout());
|
rq.add(getNorthJpanel(),BorderLayout.NORTH);
|
rq.add(getGd());
|
this.setBounds(175,0,1000,610);
|
}
|
|
/**»ñÈ¡±±²¿Ãæ°å*/
|
public NothJPanel getNorthJpanel() {
|
if(northJpanel==null) {
|
northJpanel=new NothJPanel();
|
Box topicBox = Box.createHorizontalBox();// ´´½¨Ò»¸öˮƽÏäÈÝÆ÷
|
topicBox.add(getSearchFileld());//Ìí¼ÓËÑË÷Îı¾¿ò
|
topicBox.add(Box.createHorizontalStrut(3));// Ìí¼ÓÒ»¸ö3ÏñËØ¿íµÄˮƽ֧Öù
|
topicBox.add(getSearch());//Ìí¼ÓËÑË÷°´Å¥
|
topicBox.add(Box.createHorizontalStrut(5));// Ìí¼ÓÒ»¸ö5ÏñËØ¿íµÄˮƽ֧Öù
|
topicBox.add(getShuaxin());//Ìí¼Óˢа´Å¥
|
northJpanel.add(topicBox );
|
}
|
|
return northJpanel;
|
}
|
|
/**»ñÈ¡ËÑË÷Îı¾¿òµÄ·½·¨*/
|
public JTextField getSearchFileld() {
|
if(searchFileld==null){
|
searchFileld=new JTextField(10);
|
searchFileld.addKeyListener(new KeyListener() { //¼üÅÌʼþ¼àÌý
|
public void keyTyped(KeyEvent e) {
|
}
|
public void keyReleased(KeyEvent e) {
|
int keyCode=e.getKeyCode();
|
if(keyCode==KeyEvent.VK_ENTER) {
|
getSearch().doClick();//ËÑË÷°´Å¥±»µã»÷
|
}
|
}
|
public void keyPressed(KeyEvent e) {
|
}
|
});
|
}
|
return searchFileld;
|
}
|
|
|
/**»ñÈ¡ËÑË÷°´Å¥µÄ·½·¨*/
|
public JButtonModel getSearch() {
|
if(search==null){
|
search=new JButtonModel(buttonTitle.getSerch());
|
search.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent e) {
|
// Ö´ÐÐSQL²éѯÓï¾ä»ñµÃµÄ½á¹û¼¯
|
try {
|
if(getSearchFileld().getText().length()>1) {
|
String go=getSearchFileld().getText().trim();
|
updateSerch(go);
|
}
|
} catch (Exception er) {
|
er.printStackTrace();
|
}
|
}
|
});
|
}
|
return search;
|
}
|
|
|
/**»ñȡˢа´Å¥µÄ·½·¨*/
|
public JButtonModel getShuaxin() {
|
if(shuaxin==null){
|
shuaxin=new JButtonModel(buttonTitle.getRefresh());
|
shuaxin.addActionListener(new ActionListener() {
|
public void actionPerformed(ActionEvent e) {
|
updateTable();
|
}
|
});
|
|
}
|
return shuaxin;
|
}
|
|
|
/**»ñÈ¡µ¼³ö±í¸ñ°´Å¥µÄ·½·¨*/
|
public JButtonModel getOutport() {
|
OutButton.setAddtime("time");
|
OutButton.setDataName("tb_warning");
|
return new OutButton().get_ouotport_button();
|
|
}
|
|
/**»ñÈ¡¹ö¶¯Ãæ°åµÄ·½·¨*/
|
public JScrollPane getGd() {
|
gd=new JScrollPane(getTable());
|
gd.getViewport().setBackground(UIColor.getNorth_color());
|
return gd;
|
}
|
|
|
/**Ìí¼Ó±í¸ñÐÐÏòÁ¿Êý¾Ý·½·¨*/
|
public void getRowData(Vector<Anchor> vc) {
|
Iterator<Anchor> iterator = vc.iterator();//´´½¨µü´úÆ÷
|
while (iterator.hasNext()) {//µü´úÆ÷´æÔÚÔªËØ
|
Anchor tbsuanf= iterator.next();//½«µü´úÆ÷ÀïÃæµÄÔªËØ¸øµ½list¼¯ºÏ
|
Vector<String> row = new Vector<String>();
|
String anchorid=tbsuanf.getAnc_id();
|
row.add(anchorid);//»ùÕ¾ID
|
String ceng=tbsuanf.getAnc_floor();
|
String zu=tbsuanf.getAnc_zu();
|
row.add(ceng);//²ã
|
row.add(zu);//×é
|
row.add(suanfa(ceng,zu));//Ëã·¨
|
row.add(tbsuanf.getAnc_distance());//Á¿³Ì
|
int cengint=Integer.parseInt(ceng);
|
row.add(Dell_cengao.get_tbceng(cengint).getButtom());
|
row.add(Dell_cengao.get_tbceng(cengint).getTop());
|
|
Anchor acr=Anchor_Dell.get_anchor(anchorid);
|
|
//"Èýά»ùÕ¾",
|
String sanwei=acr.getBaoliu1();
|
row.add(sanwei);
|
//"¿ç²ã¸ß¶È(cm)
|
String gaodu=acr.getBaoliu2();
|
if(gaodu==null ||gaodu.equals("")) {
|
gaodu="ÎÞ";
|
}
|
row.add(gaodu);
|
|
//и߶ÈËùÔÚµÄ×é
|
String zu2=acr.getBaoliu3();
|
if(zu2==null||zu2.equals("")) {
|
zu2="ÎÞ";
|
}
|
row.add(zu2);
|
|
//±Ø¾¾àÀë(cm)
|
String bjjl=acr.getBaoliu4();
|
if(bjjl==null||bjjl.equals("")) {
|
bjjl="ÎÞ";
|
}
|
row.add(bjjl);
|
|
tableModel.addRow(row);
|
ceng=null;
|
}
|
}
|
|
|
/**»ñÈ¡±êÇ©¸æ¾¯±í¸ñµÄ·½·¨*/
|
@SuppressWarnings("serial")
|
public JTable getTable() {
|
if(table==null) {
|
String[] name1= {"»ùÕ¾","²ã","×é","Ë㷨ά¶È ","Á¿³Ì(cm)","µ×¸ß(cm)","¶¥¸ß(cm)","ÆøÑ¹»ùÕ¾","¿ç²ã¸ß¶È(cm)","¿ç²ã×é","±Ø¾¾àÀë(cm)"};//±í¸ñÁÐÃû
|
String[] name2= {"Base station", "dimension", "layer", "group", "base height", "top height"};//±í¸ñÁÐÃû
|
String[] columnNames=English.columnNames(name1, name2);
|
//Ìí¼Ó±í¸ñÁÐÏòÁ¿
|
Vector<String> columnName=new Vector<>();
|
for(int i=0;i<columnNames.length;i++){
|
columnName.add(columnNames[i]);
|
}
|
|
greateTables tables=new greateTables();
|
tableModel=new DefaultTableModel(rowData, columnName){
|
// ʵÏÖÈÃÕû¸ö±í¸ñ²»²»ÔÊÐí±»±à¼
|
public boolean isCellEditable(int row,int column){
|
return false;
|
}
|
};
|
table=tables.getTable(tableModel);
|
getRowData(Anchor_Dell.getAnchor_vector());
|
|
}
|
return table;
|
}
|
|
|
/**ˢбí¸ñ·½·¨*/
|
public void updateTable() {
|
if(tableModel !=null) {
|
tableModel.getDataVector().clear();
|
getRowData(Anchor_Dell.getAnchor_vector());
|
gd.validate();
|
}
|
}
|
|
|
/**ËÑË÷·½·¨*/
|
public void updateSerch(String anchorid) {
|
if(Anchor_Dell.get_anchor(anchorid)==null) {
|
ShowMessage.zidingyi("ÄãËÑË÷µÄ»ùÕ¾"+anchorid+"²»´æÔÚ...");
|
return;
|
}
|
int tagnum=table.getRowCount();//±í¸ñ×ÜÐÐÊý
|
if(tagnum >0 ) {
|
for (int i = 0; i < tagnum; i++) {//ɾ³ýËùÓÐÐÐ
|
tableModel.removeRow(0);
|
}
|
//½«ÁбíÖÐËùÓнá¹û¼¯¸øµ½list¼¯ºÏ
|
getRowData(Anchor_Dell.getAnchor_vector());
|
}
|
}
|
|
/**»ñÈ¡»ùÕ¾µÄËã·¨*/
|
public String suanfa(String ceng,String zu) {
|
StringBuffer a=new StringBuffer();
|
String[] zus=zu.split(";");
|
Tb_cengzu suanf;
|
int size=zus.length;
|
if(size==1) {
|
suanf=Dell_tbcengzu.get_tbcengzu(ceng, zu);
|
String sf=suanf.getSuan_fa_wei_du();//²ã×éµÄ¶¨Î»Î¬¶È
|
a.append(sf);
|
}else {
|
for(int i=0;i<size;i++) {
|
String zustr=zus[i];
|
suanf=Dell_tbcengzu.get_tbcengzu(ceng, zustr);
|
if(suanf !=null) {
|
String sf=suanf.getSuan_fa_wei_du();//²ã×éµÄ¶¨Î»Î¬¶È
|
if(i !=size-1) {
|
a.append(sf+";");
|
}else {
|
a.append(sf);
|
}
|
}
|
}
|
}
|
return a.toString();
|
}
|
|
|
|
}
|