package com.vci.client.portal.NewUI; import java.awt.BorderLayout; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JDialog; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.JTree; import javax.swing.border.EmptyBorder; import javax.swing.tree.DefaultTreeModel; import com.vci.corba.omd.btm.BtmItem; import com.vci.client.LogonApplication; import com.vci.client.omd.provider.BtmProvider; import com.vci.client.ui.swing.VCIOptionPane; import com.vci.client.ui.tree.VCIBaseTreeModel; import com.vci.client.ui.tree.VCIBaseTreeNode; import com.vci.corba.common.VCIError; public class UICloneDestDialog extends JDialog { private final JPanel contentPanel = new JPanel(); private JTree btTree ; /** * 树对象 */ private Object treeObject; public Object getTreeObject() { return treeObject; } public void setTreeObject(Object treeObject) { this.treeObject = treeObject; } /** * Launch the application. */ public static void main(String[] args) { try { UICloneDestDialog dialog = new UICloneDestDialog(); dialog.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE); dialog.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } /** * Create the dialog. */ public UICloneDestDialog() { super(LogonApplication.frame,true); init(); this.setLocationRelativeTo(null); } private void init() { setBounds(100, 100, 450, 300); getContentPane().setLayout(new BorderLayout()); contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5)); getContentPane().add(contentPanel, BorderLayout.CENTER); contentPanel.setLayout(new BorderLayout(0, 0)); { JScrollPane scrollPane = new JScrollPane(); contentPanel.add(scrollPane, BorderLayout.CENTER); { btTree = new JTree(); scrollPane.setViewportView(btTree); try { btTree.setModel(createTreeModel()); } catch (VCIError e) { e.printStackTrace(); } } } { JPanel buttonPane = new JPanel(); buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT)); getContentPane().add(buttonPane, BorderLayout.SOUTH); { JButton okButton = new JButton("确定"); okButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent e) { VCIBaseTreeNode lastPathComponent = (VCIBaseTreeNode) btTree.getSelectionPath().getLastPathComponent(); treeObject = lastPathComponent.getObj(); if(treeObject instanceof String){ VCIOptionPane.showMessage(LogonApplication.frame, "请选择类型节点!"); return; } dispose(); } }); buttonPane.add(okButton); } { JButton cancelButton = new JButton("关闭"); cancelButton.addActionListener(new ActionListener() { @Override public void actionPerformed(ActionEvent arg0) { dispose(); } }); buttonPane.add(cancelButton); } } } private DefaultTreeModel createTreeModel() throws VCIError { BtmItem[] allBtItems = BtmProvider.getInstance().getAllBtmItems(); VCIBaseTreeNode rootNode = new VCIBaseTreeNode("业务类型树","root"); VCIBaseTreeModel treeModel = new VCIBaseTreeModel(rootNode); for(int i=0;i