2015-08-25 4 views
-1
DefaultTableModel dtm = new DefaultTableModel(new Object[]{"SR#", "Date", "Name", "Description", "Quantity", "Weight", "Rate", "Total", "Balance","Paid","Net Pay"},0); 
      table = new JTable(); 
      table.setModel(dtm); 
      JScrollPane scroller=new JScrollPane(table); 

      table.setBackground(new java.awt.Color(255,226,226)); 
      scroller.setBounds(0,0,1335,380); 
      p2.add(scroller); 
       while(rs.next()){ 
     dtm.addRow(new Object[]{rs.getString(1),rs.getString(2),rs.getString(3),rs.getString(4),rs.getString(5),rs.getString(6),rs.getString(7),rs.getString(8),rs.getString(9),rs.getString(10),rs.getString(11)}); 

Как я могу повторно использовать этот код несколько раз в своей программе, не создавая новый объект каждый раз, когда происходит событие.Re использования DefaultTableModel

+2

Комментарий к вашему стилю кода, используйте '{}' для всех ваших блоков. Это выглядит странно, когда вы запускаете весь этот код с помощью оператора if! – MyGGaN

+0

Извинения за стиль, это было слишком много отступов, однако, если вы можете помочь мне с проблемой, это было бы очень признательно. – Umair7

ответ

0

Наконец-то я получил решение своей проблемы. Мне просто нужно вызвать 2 метода, когда я нажимаю кнопку перед запуском SQL Query. Этими 2 методами являются

panel.removeAll(); и

panel.validate();

Это стирает все на вашей предыдущей панели с вашего экрана и отображает только результат, который вы хотите увидеть.

2

Кажется, что вы объявили JTable глобально и инициализировали каждый раз, когда запускается какое-либо действие.

Как и JTable, вы можете объявить свой DefaultTableModel глобально и инициализировать как JTable, так и TableModel.

Если вы не хотите сохранять старые записи в JTable, вы можете очистить JTable каждый раз, когда какое-либо действие триггера.

+0

Спасибо, брат, за понимание моего вопроса, я очень ценю, однако, я тоже это сделал, И я не получаю должное, даже если я напишу код, чтобы очистить таблицы, даже если таблица не очищение. Если вы не против читать мою программу от начала до конца или компилировать и выполнять в своей системе, я могу показать вам весь мой код, однако, достаточно большой. Я знаю, где-то я ошибаюсь, но я не могу отследить его. Пожалуйста, помогите мне, брат. – Umair7

+0

Запустите программу в режиме отладки и посмотрите, что на самом деле происходит неправильно. Если вы не смогли найти его, пожалуйста, поделитесь своим кодом с [email protected], я могу проверить. –

+0

Это мой брат кода, я обновил его, пожалуйста, посмотрите. Вы можете запустить этот код непосредственно в своей системе, однако вам нужно сначала установить DSN, и вам нужно иметь файл базы данных доступа с 11 столбцами в нем и вставлять записи, пока не получите скроллер. Это главный вопрос. Скроллер накладывается. Пожалуйста, помогите мне, брат. – Umair7