Witam po raz kolejny. W dalszym ciągu rozwijam swój program i natrafiłem na kolejną przeszkodę. Stworzyłem JComboBox z opcjami do wyboru i chcę, aby po wybraniu opcji pojawiła się dana tabela wczytana z bazy danych. Niestety setModel wyrzuca błąd ("The method setModel(TableModel) is undefined for the type String"), dlatego chciałbym się was poradzić, jak najlepiej rozwiązać ten problem.
Poniżej część mojego kodu:
final JComboBox WyborTabeli = new JComboBox();
WyborTabeli.setSize(150,30);
WyborTabeli.setLocation(getWidth()-700,getHeight()-750);
WyborTabeli.addItem("Polska Ekstraklasa");
WyborTabeli.addItem("Polska I Liga");
WyborTabeli.addItem("Polska II Liga");
panel2.add(WyborTabeli);
WyborTabeli.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
String table = WyborTabeli.getSelectedItem().toString();
if (table.equals("Polska Ekstraklasa"))
{
try {
String query2 = "select * from PolskaEkstraklasa";
PreparedStatement pst1 = pol1.prepareStatement(query2);
ResultSet rs1=pst1.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs1));
}catch (Exception e1) {
e1.printStackTrace();
}
}
else if (table.equals("Polska I Liga"))
{
try {
String query3 = "select * from PolskaPierwsza";
PreparedStatement pst2 = pol1.prepareStatement(query3);
ResultSet rs2=pst2.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs2));
}catch (Exception e2) {
e2.printStackTrace();
}
}
else if (table.equals("Polska II Liga"))
{
try {
String query4 = "select * from PolskaDruga";
PreparedStatement pst3 = pol1.prepareStatement(query4);
ResultSet rs3=pst3.executeQuery();
table.setModel(DbUtils.resultSetToTableModel(rs3));
}catch (Exception e3) {
e3.printStackTrace();
}
}
}
});
Edit:
Temat do zamknięcia. Popełniłem głupi błąd ponieważ nazwa stringa była taka sama jak nazwa stworzonej przeze mnie tabeli, stąd pojawił się błąd