Java newb ie здесь. Я использую NetBeans 11.2. Я делаю GUI AWT приложение, у меня есть основной класс в качестве JFrame, и мне нужно сослаться на JTable на него или его модель из другого класса.
Чтобы не перегружать этот пост большим количеством кода, я создал крошечный проект из учебника на Oracle сайте . По сути, это проект с именем "CelciusConverterProject", JFrame с именем "Celciusconverter GUI" в качестве основного класса в пакете "learn". Затем я положил jTable1 на фрейм и добавил геттер в Celciusconverter GUI для табличной модели с именем "getMdl ()":
package learn;
import javax.swing.table.DefaultTableModel;
public class CelsiusConverterGUI extends javax.swing.JFrame {
[...]
/* Create and display the form */
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new CelsiusConverterGUI().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTable1;
// End of variables declaration
public DefaultTableModel getMdl() {
return (DefaultTableModel) this.jTable1.getModel();
}
}
Пока ошибок нет, панель Navigator показывает getMdl как публикацию c method.
Теперь я создал новый класс под названием «Testing», но не могу понять, как вызвать getMdl () из запущенного экземпляра JFrame:
package learn;
import javax.swing.table.DefaultTableModel;
public class Testing {
tmdl = (DefaultTableModel) <...>
}
Ни то, ни другое
tmdl = new (DefaultTableModel) learn.CelsiusConverterGUI.
, ни
tmdl = (DefaultTableModel) learn.CelsiusConverterGUI.
показывает мне мой получатель в окне завершения кода.
Вероятно, совершенно неопрятный sh вопрос, но извините, я могу ' даже Google, кто задал тот же вопрос.