📄 mainframe.java
字号:
refreshButton.removeMouseListener(new MouseListener()); jButtonConExec.removeMouseListener(new MouseListener()); jButtonConClear.removeMouseListener(new MouseListener()); jButtonInpExec.removeMouseListener(new MouseListener()); jButtonInpClear.removeMouseListener(new MouseListener()); } } //返回显示状态 public boolean isShowRollover() { return showRollover; } //显示提示工具条 public void setShowTooltips(boolean showTooltips) { this.showTooltips = showTooltips; if(showTooltips) { firstButton.setToolTipText("移到首行"); priorButton.setToolTipText("移到前一行"); nextButton.setToolTipText("移到下一行"); lastButton.setToolTipText("移到最后一行"); insertButton.setToolTipText("增加一行"); deleteButton.setToolTipText("删除当前行"); dittoButton.setToolTipText("拷贝当前行"); saveButton.setToolTipText("保存增加或修改"); refreshButton.setToolTipText("刷新"); } else { firstButton.setToolTipText(null); priorButton.setToolTipText(null); nextButton.setToolTipText(null); lastButton.setToolTipText(null); insertButton.setToolTipText(null); deleteButton.setToolTipText(null); dittoButton.setToolTipText(null); saveButton.setToolTipText(null); refreshButton.setToolTipText(null); } } //返回提示工具条状态 public boolean isShowTooltips() { return showTooltips; } //对齐方式 public void setAlignment(int alignment) { LayoutManager layout = getLayout(); if(layout instanceof FlowLayout) ((FlowLayout)layout).setAlignment(alignment); } public int getAlignment() { LayoutManager layout = getLayout(); if(layout instanceof FlowLayout) return ((FlowLayout)layout).getAlignment(); else return 0; } //主模板主控件的初始化 public void jbInit() throws Exception { //contentPane显示 contentPane = (JPanel) this.getContentPane(); contentPane.setLayout(null); this.setSize(new Dimension(800, 600)); this.setTitle("DB Control Center"); //navToolBar显示定义 navToolBar.setFloatable(false); navToolBar.setLayout(new FlowLayout()); navToolBar.setBounds(new Rectangle(190, 184, 590, 40)); navToolBar.setVisible(false); //tab显示定义 jTabbedPane1.setBounds(new Rectangle(220, 14, 540,165)); JPanel paneCon = new JPanel(flowLayout1_paneCon); JPanel paneInp = new JPanel(flowLayout1_paneInp); jTabbedPane1.addTab("条件选择查询", paneCon); jTabbedPane1.addTab("条件输入查询", paneInp); //初始化TAB中的元素 paneCon.setLayout(null); jpaneCon.setBorder(BorderFactory.createRaisedBevelBorder()); jpaneCon.setBounds(new Rectangle(5, 5, 525, 125)); jpaneCon.setLayout(null); jLabelCon.setText("请输入条件查询字段值:"); jLabelCon.setBounds(new Rectangle(10, 5, 150, 20)); jLabelField1.setText("域字段1:"); jLabelField1.setBounds(new Rectangle(10,28,60,20)); jTextCon1.setText(""); jTextCon1.setBounds(new Rectangle(90, 28, 100, 17)); jLabelField2.setText("域字段2:"); jLabelField2.setBounds(new Rectangle(10,51,60,20)); jTextCon2.setText(""); jTextCon2.setBounds(new Rectangle(90, 51, 100, 17)); jLabelField3.setText("域字段3:"); jLabelField3.setBounds(new Rectangle(10,74,60,20)); jTextCon3.setText(""); jTextCon3.setBounds(new Rectangle(90, 74, 100, 17)); jLabelField4.setText("域字段4:"); jLabelField4.setBounds(new Rectangle(10,97,60,20)); jTextCon4.setText(""); jTextCon4.setBounds(new Rectangle(90, 97, 100, 17)); jLabelField5.setText("域字段5:"); jLabelField5.setBounds(new Rectangle(220,28,60,20)); jTextCon5.setText(""); jTextCon5.setBounds(new Rectangle(300, 28, 100, 17)); jLabelField6.setText("域字段6:"); jLabelField6.setBounds(new Rectangle(220,51,60,20)); jTextCon6.setText(""); jTextCon6.setBounds(new Rectangle(300, 51, 100, 17)); jLabelField7.setText("域字段7:"); jLabelField7.setBounds(new Rectangle(220,74,60,20)); jTextCon7.setText(""); jTextCon7.setBounds(new Rectangle(300, 74, 100, 17)); jLabelField8.setText("域字段8:"); jLabelField8.setBounds(new Rectangle(220,97,60,20)); jTextCon8.setText(""); jTextCon8.setBounds(new Rectangle(300, 97, 100, 17)); //ta初始化不可输入 jTextCon1.setEnabled(false); jTextCon2.setEnabled(false); jTextCon3.setEnabled(false); jTextCon4.setEnabled(false); jTextCon5.setEnabled(false); jTextCon6.setEnabled(false); jTextCon7.setEnabled(false); jTextCon8.setEnabled(false); //end jButtonConExec.setBounds(new Rectangle(440, 25, 79, 20)); jButtonConClear.setBounds(new Rectangle(440, 50, 79, 20)); jButtonConExec.enable(false); jLabelInp.setText("请输入SQL查询语句:(Select * from ...)"); jLabelInp.setBounds(new Rectangle(10, 5, 350, 20)); jTextInp.setBounds(new Rectangle(10, 25, 425, 90)); jButtonInpExec.setBounds(new Rectangle(440, 25, 79, 20)); jButtonInpClear.setBounds(new Rectangle(440, 50, 79, 20)); jButtonConExec.setEnabled(false); jButtonInpExec.setEnabled(false); paneInp.setLayout(null); jpaneInp.setBorder(BorderFactory.createRaisedBevelBorder()); jpaneInp.setBounds(new Rectangle(5, 5, 525, 125)); jpaneInp.setLayout(null); //增加元素显示 paneCon.add(jpaneCon, null); paneInp.add(jpaneInp, null); jpaneCon.add(jLabelCon,null); jpaneCon.add(jLabelField1,null); jpaneCon.add(jTextCon1,null); jpaneCon.add(jLabelField2,null); jpaneCon.add(jTextCon2,null); jpaneCon.add(jLabelField3,null); jpaneCon.add(jTextCon3,null); jpaneCon.add(jLabelField4,null); jpaneCon.add(jTextCon4,null); jpaneCon.add(jLabelField5,null); jpaneCon.add(jTextCon5,null); jpaneCon.add(jLabelField6,null); jpaneCon.add(jTextCon6,null); jpaneCon.add(jLabelField7,null); jpaneCon.add(jTextCon7,null); jpaneCon.add(jLabelField8,null); jpaneCon.add(jTextCon8,null); jpaneCon.add(jButtonConExec,null); jpaneCon.add(jButtonConClear,null); jpaneInp.add(jTextInp,null); jpaneInp.add(jLabelInp,null); jpaneInp.add(jButtonInpExec,null); jpaneInp.add(jButtonInpClear,null); //Buttons显示定义 initButtons(navToolBar); setShowRollover(!"Mac".equals(UIManager.getLookAndFeel().getID())); setShowTooltips(true); if(showRollover ) { firstButton.setBorder(emptyButtonBorder); priorButton.setBorder(emptyButtonBorder); nextButton.setBorder(emptyButtonBorder); lastButton.setBorder(emptyButtonBorder); insertButton.setBorder(emptyButtonBorder); deleteButton.setBorder(emptyButtonBorder); dittoButton.setBorder(emptyButtonBorder); saveButton.setBorder(emptyButtonBorder); refreshButton.setBorder(emptyButtonBorder); } //树的显示与事件响应 createNodes(top); jTree1.setEditable(false); jTree1.getSelectionModel().setSelectionMode(TreeSelectionModel.CONTIGUOUS_TREE_SELECTION); jTree1.setShowsRootHandles(true); jTree1.addMouseListener(new java.awt.event.MouseAdapter() { public void mouseClicked(MouseEvent exp) { jTree1_mouseClicked(exp); } }); treeView.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED); treeView.setViewportBorder(BorderFactory.createEtchedBorder()); treeView.setBounds(new Rectangle(5, 14, 180, 550)); //显示树 contentPane.add(treeView, null); //显示文本操作框 contentPane.add(jTabbedPane1,null); //显示操作工具栏 contentPane.add(navToolBar, null); } //Window事件响应 protected void processWindowEvent(WindowEvent e) { super.processWindowEvent(e); if (e.getID() == WindowEvent.WINDOW_CLOSING) { System.exit(0); } }//:构造函数/初始化函数/控件初始化定义结束//******************************************************************************//******************************************************************************//显示树开始: public void createNodes(DefaultMutableTreeNode top) { getPower gp=new getPower(); thePower = gp.getUserPower(User); //:test:System.out.println("The power string:"+thePower); //定义数据源名 DBSourceManager DBSource = new DBSourceManager(); //取得所有数据源名 DBSource.getAllSourceRecode(thePower); vViewPower = DBSource.getAllDBSPower(); //:test:System.out.println("Power:"+vViewPower); //取得所有DBSID Vector DBSID = new Vector(); DBSID = DBSource.getAllDBSID(); //:test:System.out.println("DBSID:"+DBSID); //取得所有DBSNAME Vector DBSName = new Vector(); DBSName = DBSource.getAllDBSName(); //显示树的所有节点 for(int i=0 ;i<DBSID.size();i++){ //显示所有数据源 //:test:System.out.println("dbsid="+DBSID.size()) ; DBTableManager DBTable = new DBTableManager(DBSID.elementAt(i).toString(),thePower); Vector DBTType = new Vector(); DBTType = DBTable.getAllDBTType(); vActionPower = DBTable.getAllDBTPower(); if(vActionPower.size()>0) vAllPower.addElement(vActionPower); //:test:System.out.println("The allActionPower:"+vAllPower); //:test:System.out.println("The ActionPower:"+vActionPower); //:test:System.out.println("The DbtType:"+DBTType); if(DBTType.size()>0){ node1 = new DefaultMutableTreeNode(DBSName.elementAt(i).toString()); top.add(node1); //显示数据表类型 for(int j = 0;j<DBTType.size() ;j++){ child1 = new DefaultMutableTreeNode(DBTType.elementAt(j).toString() ); node1.add(child1); //test:System.out.println("i="+DBSID.elementAt(i).toString()); //test:System.out.println("j="+DBTType.elementAt(j).toString()); DBTableManager dbtm = new DBTableManager(); dbtm.getAllTableRecode(DBSID.elementAt(i).toString(),DBTType.elementAt(j).toString()); Vector vTabename = new Vector(); vTabename = dbtm.getAllDBTName(); //test:System.out.println("size="+vTabename.size()); //显示所有表 for(int k=0 ;k<vTabename.size();k++){ //test:System.out.println(vTabename.elementAt(k).toString()); child1_level1 = new DefaultMutableTreeNode(vTabename.elementAt(k).toString()); child1.add(child1_level1); } } } } if(top.isLeaf()){ JOptionPane.showMessageDialog(this,"您没有操作表的权限,请退出\n", "信息提示", JOptionPane.INFORMATION_MESSAGE); System.exit(0); } }//显示树结束//*****************************************************************//******************************************************************************//******************************************************************************//响应树点击开始: void jTree1_mouseClicked(MouseEvent e){ //当前节点所在位置 int posx=0; int posy=0; //取得当前点击节点值 DefaultMutableTreeNode node; jButtonConClear_mouseClicked(); jButtonInpClear_mouseClicked(); if(jTree1.isSelectionEmpty()){ //点击空白处,不做处理 } else{ node = (DefaultMutableTreeNode)jTree1.getLastSelectedPathComponent(); if(!DBTableName.equals(node.toString())){ DBTableName=node.toString() ; //:test:System.out.println("DBTableName="+DBTableName); //:test:System.out.println(node.toString()); //处理当前点击节点为叶子节点事件 if (node.isLeaf()) { //取得当前节点所在位置 //ta初始化不可输入 jLabelField1.setText("域字段1"); jTextCon1.setEnabled(false); jLabelField2.setText("域字段2"); jTextCon2.setEnabled(false); jLabelField3.setText("域字段3"); jTextCon3.setEnabled(false); jLabelField4.setText("域字段4"); jTextCon4.setEnabled(false); jLabelField5.setText("域字段5"); jTextCon5.setEnabled(false); jLabelField6.setText("域字段6"); jTextCon6.setEnabled(false); jLabelField7.setText("域字段7"); jTextCon7.setEnabled(false); jLabelField8.setText("域字段8"); jTextCon8.setEnabled(false); //end int Flen=0; int ti=0; String Tid; getDBTKey getTid = new getDBTKey(); getTid.getKey(DBTableName); Tid = getTid.getTid(); //定义数据域名 DBFieldManager DBField = new DBFieldManager(); //取得所有数据源名 DBField.getAllFieldRecode(Tid); //取得当前节点路径 TreePath pathnode = (TreePath)jTree1.getLeadSelectionPath(); //取得当前数据源 DBSourceName=pathnode.getPathComponent(1).toString(); //控制编辑按钮等的可操作与否 String judgeType = pathnode.getPathComponent(2).toString(); //:test:System.out.println(judgeType); //取得当前表所在的数据源及类位置相对应权限 for(int i=0;i<top.getChildCount();i++){ if(DBSourceName.equals(top.getChildAt(i).toString())){ posx = i; break; } } for(int i=0;i<top.getChildAt(posx).getChildCount();i++){ if(judgeType.equals(top.getChildAt(posx).getChildAt(i).toString())){ posy = i; break; } } //:test:System.out.println("the posx:"+posx); //:test:System.out.println("the posy:"+posy); actPower = Integer.parseInt(((Vector)vAllPower.elementAt(posx)).elementAt(posy).toString()); //:test:System.out.println("the actPower:"+actPower); //动态表不能进行编辑
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -