使用另一个类中的jbutton操作将jcombobox变量从一个类传递到另一个类

时间:2017-10-15 03:27:25

标签: java mysql swing

因此,在Java中,我使用swing components创建了两个类。在名为SearchPage的一个班级中,我在提供的JtextfieldJcombobox中为搜索设置参数,然后点击应用jbutton。当我这样做时,根据哪个字段包含数据,我想将该变量发送到我的pop_tree方法中使用的ItemPage类,以使用该变量来搜索我的mysql数据库并使用搜索填充树结果。我怎么能做到这一点?

以下是pop_tree方法的代码:

public final void pop_tree() throws SQLException {
    //creating root node
    DefaultTreeModel dbtree = (DefaultTreeModel)DBTree.getModel();
    dbtree.reload();
    dbtree.getRoot();
    DefaultMutableTreeNode content = new DefaultMutableTreeNode("Content");

        //let's see if I can create these child nodes
        SearchPage s = new SearchPage();
        try {
            con = DBconnect.getConnection();
            stm = con.createStatement();
            s.apply_search_button.doClick();
            if(s.apply_search_button.getModel().isPressed()){
            //Grab what's in search field of Search Page
            try{
                String search = s.search_field.getText();
                if (search == null){
                    return;
                }else{
                    ResultSet rs = stm.executeQuery("SELECT * from displaydetails WHERE item LIKE '%"+search+"%'");
                    while (rs.next()){
                        DefaultMutableTreeNode itemNode = new DefaultMutableTreeNode (rs.getString("item"));
                        content.add(itemNode);
                    }
                }
            }catch(SQLException e){
                System.out.println(e);
            }

            try{
                //If a genre selection is made in the combo box:
                if ((s.option_box.getSelectedItem())== "genre"){
                String genre2 = s.result_box.getSelectedItem().toString();
                if (genre2.equals(s.result_box.getSelectedItem())) {
                    ResultSet rs1 = stm.executeQuery("SELECT * from displaydetails WHERE genre = '" + genre2 + "';");
                    while (rs1.next()){
                        DefaultMutableTreeNode itemNode = new DefaultMutableTreeNode (rs1.getString("item"));
                        content.add(itemNode);
                    }
                }
            }
            }catch(SQLException e){
                System.out.println(e);
            }

我创建了搜索表单以设置搜索参数,但是当我单击表单上的apply_search_button时,我想将变量发送到pop_tree()方法中的正确位置以执行搜索。谁能帮我这个?感谢。

1 个答案:

答案 0 :(得分:0)

要获得答案“在另一个类中使用jbutton操作将jcombobox变量从一个类传递到另一个类”,不需要发布大部分代码。 始终考虑发布 [mcve]
这是一个证明:

-