2016-03-13 3 views
0

Итак, у меня есть этот jTable на моем кадре и jComboBox. Внутри моего jComboBox есть список телефонов. Я хочу, чтобы jTable получал базу данных конкретного продукта внутри jComboBox. Предположим, я выбрал Samsung S7 в jComboBox. Когда я нажимаю кнопку «Подробности», jTable покажет данные Samsung S7 (Модель, Цена, Фондовый и т. Д.). Как мне это сделать? Вот мой код:Нужна помощь относительно jComboBox и jTable

try { 
     Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/projectephone","root",""); 
     String sql= "select * from samsung"; 
     PreparedStatement pst = con.prepareStatement(sql); 
     ResultSet rs= pst.executeQuery(); 
     jTable1.setModel(DbUtils.resultSetToTableModel(rs)); 

    } catch (Exception e) { 
     JOptionPane.showMessageDialog(null, "Failed to add"); 
    } 
} 

Но этот код просто заставляет мой jTable показывать все мои данные внутри моей таблицы базы данных. Есть идеи?

+1

Java Swing поддерживается на Android? –

+1

Lol, им извините. Я не видел этот тег. Подождите, я его отредактирую. – redcrucible

+1

Прочтите раздел из учебника Swing [Как использовать комбо-боксы] (http://docs.oracle.com/javase/tutorial/uiswing/components/combobox.html) для примеров того, как писать слушателя, чтобы получить выбранного элемента в поле со списком и выполнить обработку этого значения. – camickr

ответ

3

Когда кнопка детали щелкают

  1. получить текущий выбранный телефон от JComboBox (заданного в качестве имени телефона или внутреннего идентификатора в таблице базы данных или любой другой)

  2. , а затем использовать это значение чтобы ограничить поиск.

Например

String phoneName = ... // current selected in the the combobox 
String sql= "select * from samsung where name = ?"; 
PreparedStatement pst = con.prepareStatement(sql); 
pst.setString(1, phoneName); 
ResultSet rs= pst.executeQuery(); 
+0

Должен ли я сделать это в каждом элементе в моем списке? У меня есть 15 элементов внутри моего combobox – redcrucible

+0

, он должен работать как общее решение - до тех пор, пока каждый элемент в combobox дает вам значение столбца, которое вы можете использовать для фильтрации поиска. – wero

+0

О, хорошо. Я попробую. Еще кое-что. «String phoneName» - это имя переменной combobox или item? Если это элемент, я должен также объявить строку для остальных элементов? – redcrucible

Смежные вопросы