Я добавил JScrollPane для своего JTable. Он появился, но не прокручивается.JScrollPane не принадлежит JTable
public class AddDepartment extends JFrame {
private static JPanel contentPane;
private Connection DBConnection;
static Connection conn = new DBConnection().connect();
static PreparedStatement pstmt = null;
static ResultSet rs = null;
static DefaultTableModel model = null;
private static JTable tableDepartments;
private static JScrollPane scrollPane;
public AddDepartment() throws SQLException {
model = new DefaultTableModel();
tableDepartments = new JTable(model);
tableDepartments.setRowSelectionAllowed(false);
tableDepartments.setEnabled(false);
tableDepartments.setSize(new Dimension(197, 66));
tableDepartments.setLocation(161, 34);
tableDepartments.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
updateDepartments();
}
private static void updateDepartments() throws SQLException {
try {
String sql = "SELECT Name FROM Departments";
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
model.addColumn("Name");
while (rs.next()) {
String departmentName = rs.getString("Name");
model.addRow(new Object[] { departmentName });
}
if (tableDepartments.getRowCount() > 5) {
scrollPane = new JScrollPane(tableDepartments);
scrollPane.setSize(new Dimension(10, 50));
scrollPane.setLocation(360, 34);
scrollPane.setVerticalScrollBarPolicy(ScrollPaneConstants.VERTICAL_SCROLLBAR_ALWAYS);
contentPane.add(scrollPane);
}
contentPane.add(tableDepartments);
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex);
} finally {
rs.close();
pstmt.close();
}
}
}
Отделы стол:
На рисунке выше показано, как это выглядит. Я не могу прокрутить вниз.
(1-) Это НЕ SSCCE. Сколько раз вам нужно сказать, что мы не можем выполнить этот код, потому что у нас нет доступа к вашей базе данных !!! Ваш вопрос касается прокрутки, которая абсолютно не связана с получением данных из базы данных. Вам было сказано несколько раз публиковать свой SSCCE с жестко закодированными данными, чтобы мы могли выполнить ваш код, чтобы увидеть, что именно происходит. Если вы хотите помочь приложить усилия, вместо того, чтобы задавать 4 вопроса по одной теме. При правильном SSCCE это было бы решено с первым вопросом. – camickr