⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 musiclistview.java~124~

📁 音乐播放器 好像是用java编的 欢迎下载
💻 JAVA~124~
📖 第 1 页 / 共 2 页
字号:
            if (parent != null) {
                treeModel.removeNodeFromParent(currentNode);
                return;
            }
        }

        // Either there was no selection, or the root was selected.
        toolkit.beep();
    }

    public DefaultMutableTreeNode addObject(Object child) {
            DefaultMutableTreeNode parentNode = null;
            TreePath parentPath = jTree1.getSelectionPath();

            if (parentPath == null) {
                parentNode = rootNode;
            } else {
                parentNode = (DefaultMutableTreeNode)
                             (parentPath.getLastPathComponent());
            }

            return addObject(parentNode, child, true);
        }

        public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent,
                                                Object child) {
            return addObject(parent, child, false);
        }

        public DefaultMutableTreeNode addObject(DefaultMutableTreeNode parent,
                                                Object child,
                                                boolean shouldBeVisible) {
            DefaultMutableTreeNode childNode =
                    new DefaultMutableTreeNode(child);

            if (parent == null) {
                parent = rootNode;
            }

            treeModel.insertNodeInto(childNode, parent,
                                     parent.getChildCount());

            //Make sure the user can see the lovely new node.
            if (shouldBeVisible) {
                jTree1.scrollPathToVisible(new TreePath(childNode.getPath()));
            }
            return childNode;
    }

    public void jMenuItem1_actionPerformed(ActionEvent e) {
        if(jTree1.getPathForLocation(getX(), getY()).getPathCount() == 3)
        {
            MusicEditor musicEditor = new MusicEditor(mv);
            musicEditor.type = 1;
            String title = jTree1.getLastSelectedPathComponent().toString();
            String setName = jTree1.getPathForLocation(getX(), getY()).getParentPath().getLastPathComponent().toString();
            for(MusicModel i : mv.getList())
            {
                if(i.getName().equalsIgnoreCase(setName))
                {
                    i.connectDB();
                    try
                    {
                        ResultSet rs = i.getStatement().executeQuery("select * from " + i.getTabname() + " where TITLE='" + title + "'");
                        while(rs.next())
                        {
                            musicEditor.jComboBox1.setSelectedItem(rs.getString(
                                    "FORMAT"));
                            musicEditor.jTextField1.setText(rs.getString(
                                    "GERUE"));
                            musicEditor.jComboBox2.setSelectedItem(new Integer(
                                    rs.getInt("RATING")).toString());
                            musicEditor.jTextField2.setText(rs.getString(
                                    "TITLE"));
                            musicEditor.jTextField2.setEditable(false);
                            musicEditor.jTextField3.setText(rs.getString(
                                    "DIRECTOR"));
                            musicEditor.jTextField4.setText(new Integer(rs.
                                    getInt("YEAR")).toString());
                            musicEditor.jComboBox3.setSelectedItem(setName);
                            musicEditor.jTextField5.setText(rs.getString(
                                    "LOCATION"));
                            musicEditor.jTextArea1.setText(rs.getString(
                                    "EVALUATION"));
                            musicEditor.jTextArea2.setText(rs.getString(
                                    "COMMENTS"));
                        }
                        rs.close();
                    }
                    catch(Exception ex)
                    {
                        JOptionPane.showMessageDialog(this, ex.toString());
                    }
                    i.closeDB();
                    break;
                }
            }
            mv.centerDisplay(musicEditor, 500, 400);
        }
        else
        {
            JOptionPane.showMessageDialog(this, "您选定的不是音乐!");
        }

    }

    public void jMenuItem2_actionPerformed(ActionEvent e) {
        if(jTree1.getPathForLocation(getX(), getY()).getPathCount() == 3)
        {
            String title = jTree1.getLastSelectedPathComponent().toString();
            String setName = jTree1.getPathForLocation(getX(), getY()).getParentPath().getLastPathComponent().toString();
            for(MusicModel i : mv.getList())
            {
                if(i.getName().equalsIgnoreCase(setName))
                {
                    i.connectDB();
                    i.delMusic(title);
                    i.closeDB();
                }
            }
            JOptionPane.showMessageDialog(this, "您选定的音乐已从音乐集'" + setName + "'中删除!");
        }
        else
        {
            JOptionPane.showMessageDialog(this, "您选定的不是音乐!");
        }

    }

    public void jMenuItem3_actionPerformed(ActionEvent e) {
        if(jTree1.getPathForLocation(getX(), getY()).getPathCount() == 2)
        {
            String setName = jTree1.getLastSelectedPathComponent().toString();
            for(MusicModel i : mv.getList())
            {
                if(i.getName().equalsIgnoreCase(setName))
                {
                    i.connectDB();
                    try{
                    i.getStatement().executeUpdate("drop table " + i.getTabname());
                    i.getStatement().executeUpdate("delete from MUSICSET where NAME='" + setName + "'");
                    }
                    catch(Exception ex)
                    {
                        JOptionPane.showMessageDialog(this, "删除音乐集'" + setName + "'失败!");
                    }
                    i.closeDB();
                    break;
                }
            }
            this.removeCurrentNode();
            JOptionPane.showMessageDialog(this, "您选定的音乐集'" + setName + "'已删除!");
        }
        else
        {
            JOptionPane.showMessageDialog(this, "您选定的不是音乐集!");
        }

    }
}


class MusicListView_jMenuItem2_actionAdapter implements ActionListener {
    private MusicListView adaptee;
    MusicListView_jMenuItem2_actionAdapter(MusicListView adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem2_actionPerformed(e);
    }
}


class MusicListView_jMenuItem1_actionAdapter implements ActionListener {
    private MusicListView adaptee;
    MusicListView_jMenuItem1_actionAdapter(MusicListView adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem1_actionPerformed(e);
    }
}


class MusicListView_jMenuItem3_actionAdapter implements ActionListener {
    private MusicListView adaptee;
    MusicListView_jMenuItem3_actionAdapter(MusicListView adaptee) {
        this.adaptee = adaptee;
    }

    public void actionPerformed(ActionEvent e) {
        adaptee.jMenuItem3_actionPerformed(e);
    }
}


class MyTreeModelListener implements TreeModelListener {
        MusicListView mlv = null;

        public MyTreeModelListener(MusicListView mlv)
        {
            this.mlv = mlv;
        }

        public void treeNodesChanged(TreeModelEvent e) {
            DefaultMutableTreeNode node;
            node = (DefaultMutableTreeNode)
                     (e.getTreePath().getLastPathComponent());

            /*
             * If the event lists children, then the changed
             * node is the child of the node we've already
             * gotten.  Otherwise, the changed node and the
             * specified node are the same.
             */
            try {
                int index = e.getChildIndices()[0];
                node = (DefaultMutableTreeNode)
                       (node.getChildAt(index));
            } catch (NullPointerException exc) {}
            if (mlv.getTree().getPathForLocation(mlv.getX(), mlv.getY()).getPathCount() == 2)
            {
                String DRIVER = "com.borland.datastore.jdbc.DataStoreDriver";
                String URL = "jdbc:borland:dslocal:";
                String FILE = "musicmgrsys.jds";

                try
                {
                    Class.forName(DRIVER);
                    Connection con = DriverManager.getConnection(URL + FILE, "SYSDBA",
                                                         "masterkey");
                    Statement stmt = con.createStatement();
                    stmt.executeUpdate("Update MUSICSET set NAME='" + node.getUserObject() + "'" + " where NAME='" + mlv.getNodeStr() + "'");
                    stmt.close();
                    con.close();
                }
                catch(Exception ex)
                {
                    JOptionPane.showMessageDialog(null, ex.toString());
                }

            }
            else if(mlv.getTree().getPathForLocation(mlv.getX(), mlv.getY()).getPathCount() == 3)
            {
                String setName = mlv.getTree().getPathForLocation(mlv.getX(), mlv.getY()).getParentPath().
                                  getLastPathComponent().toString();
                //System.out.println(setName);
                String tabName = null;
                String DRIVER = "com.borland.datastore.jdbc.DataStoreDriver";
                String URL = "jdbc:borland:dslocal:";
                String FILE = "musicmgrsys.jds";

                try
                {
                    Class.forName(DRIVER);
                    Connection con = DriverManager.getConnection(URL + FILE, "SYSDBA",
                                                         "masterkey");
                    Statement stmt = con.createStatement();
                    ResultSet rs = stmt.executeQuery("select TABNAME from MUSICSET where NAME='" + setName + "'");
                    while(rs.next())
                    {
                        tabName = rs.getString("TABNAME");
                    }
                    rs.close();
                    stmt.executeUpdate("Update " + tabName + " set TITLE='" + node.getUserObject() + "' where TITLE='" + mlv.getNodeStr() + "'");
                   // System.out.println("Update " + tabName + " set TITLE='" + node.getUserObject() + "' where TITLE='" + mlv.getNodeStr() + "'");
                    Statement stmt1 = con.createStatement();
                    ResultSet rs1 = stmt1.executeQuery("select * from " + tabName + " where TITLE='" + node.getUserObject() + "'");
                    JTextArea jta = mlv.mv.getMusicItemView().getTextArea();
                    while(rs1.next())
                    {
                         jta.setText("");
                         jta.append("格式: " + rs1.getString("FORMAT") + "\n");
                         jta.append("种类: " + rs1.getString("GERUE") + "\n");
                         jta.append("等级: " + rs1.getString("RATING") + "\n");
                         jta.append("评价: " + rs1.getString("EVALUATION") + "\n");
                         jta.append("标题: " + rs1.getString("TITLE") + "\n");
                         jta.append("原唱: " + rs1.getString("DIRECTOR") + "\n");
                         jta.append("年份: " + rs1.getString("YEAR") + "\n");
                         jta.append("注释: " + rs1.getString("COMMENTS") + "\n");
                         jta.append("路径: " + rs1.getString("LOCATION") + "\n");

                    }
                    rs1.close();
                    stmt1.close();
                    stmt.close();
                    con.close();
                }
                catch(Exception ex)
                {
                    JOptionPane.showMessageDialog(null, ex.toString());
                }

            }
        }
        public void treeNodesInserted(TreeModelEvent e) {
        }
        public void treeNodesRemoved(TreeModelEvent e) {
        }
        public void treeStructureChanged(TreeModelEvent e) {
        }
  }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -