2016-05-13 7 views
0

Привет, ребята, я здесь новый, поэтому, пожалуйста, несите меня.Вызов основной формы из другой формы JavaNetbeans

У меня есть две формы jframe. Основной формой является Talaan и вторая форма jframe, которая является AddRecord.

Основной Talaan - это заполнение данных в таблице из базы данных методом checkDB().

Теперь моя проблема в том, когда я вызываю вторую форму AddRecord, которая используется для добавления записей, я хочу вызвать метод checkDB() из Talaan, чтобы обновить таблицу, чтобы повторно заполнить данные. Какой код мне следует добавить ..

Я попробовал коды ниже которого не работает ..

Talaan populate = new Talaan(); 
populate.checkDB(); 

Можете ли вы мне помочь?

+0

Откуда вы знаете, что это не работает? – shmosel

+0

Это не сработало, потому что я уже пробовал .. Может быть, я не очень конкретный .. Может быть, мне не нужно вставлять новый Talaan(), потому что форма талана уже присутствует ..Я запустил программу talaan. Я нажал кнопку AddRecord, а затем AddRecord jframe показал. Теперь две формы присутствуют. Я добавил запись в базу данных из AddRecord. И я хочу, чтобы инициализировать все компоненты в Talaan, чтобы обновить table .. –

ответ

-2

в вашем checkDB(), вы используете Jtable для отображения данных из базы данных? Если вы используете jTable, вы можете использовать jTable.repaint().

+0

Спасибо за ваш ответ, и я действительно оценил его. Да, я использую jTable. Я имею в виду, как я могу вызвать метод checkDB() из AddRecord .. просто вызов метода checkDB в моем классе AddRecord дает мне ошибка .. –

+0

(1-) Вам никогда не нужно использовать repaint() на столе. Когда вы меняете данные в TableModel, модель будет уведомлять таблицу, и таблица автоматически перекрашивается. – camickr

+0

Какие ошибки дают u для вызова checkDB() в классе AddRecord? Можете ли вы показать свой исходный код? – sawyinwaimon

1

Основная форма, которая Talaan и вторая форма JFrame, который AddRecord ..

Приложение должно иметь только одну JFrame. Второе окно должно быть модальным JDialog.

, когда я называю второй формы AddRecord, которая используется для добавления записей

При нажатии на кнопку «Добавить запись» в диалоговом окне необходимо добавить данные из диалога с DefaultTableModel из JTable.

Таким образом, самый простой способ - передать значение DefaultTableModel в качестве параметра в класс «AddRecord». то вы можете просто использовать метод addRow(...) для DefaultTableModel, чтобы добавить данные в таблицу.

Или, если вы хотите снова перечитать все данные из базы данных, то ваш метод для получения данных из базы данных должен вернуть объект TableModel. Тогда вы можете просто обновить JTable с помощью:

table.setModel(theUpdatedTableModel); 

Ваш вопрос путь к расплывчатым, чтобы дать конкретный ответ.

Edit:

как я называю метод() из AddRecord CheckDB ..

Метод checkDB принадлежит к классу Taalan. Поэтому вам необходимо передать класс Taalan в качестве параметра в класс AddRecord.

Это базовая Java. Если вы хотите вызвать метод в классе, вам нужно иметь ссылку на класс.

+0

Прошу прощения за очень сложный вопрос .. И я тоже смущен слишком син. Я новичок в java .. И спасибо за ответ. Я имею в виду метод checkDB() в основном используется для отображения данных в таблицу .. внутри checkDB() включает в себя tablehow.addRow (prmaryData) .. поэтому позволяет забыть другие коды для отображения .. теперь в классе addrecord я хочу позвонить в checkDB там .. –