因此,在Java
中,我使用swing components
创建了两个类。在名为SearchPage
的一个班级中,我在提供的Jtextfield
或Jcombobox
中为搜索设置参数,然后点击应用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()
方法中的正确位置以执行搜索。谁能帮我这个?感谢。
答案 0 :(得分:0)
要获得答案“在另一个类中使用jbutton操作将jcombobox变量从一个类传递到另一个类”,不需要发布大部分代码。
始终考虑发布 [mcve]。
这是一个证明:
-