Чтобы изменить внешний вид во время выполнения, все, что вам нужно сделать, это заменить содержимое новыми компонентами.Таким образом, в зависимости от того, как вы получаете ввод, вы заменяете числа, указанные в ответе akf, на ввод.
panel.setLayout(new GridLayout( rows, columns));
, а затем, чтобы показать новую панель, добавляете ее в JFrame на
add( panel );
Однако ваше назначение может быть чем-то похожим на подклассы JPanel для отображения матрицы.Я получаю это впечатление в вашей формулировке.Тогда это совершенно другое решение.
Если ваша единственная цель - реализовать матрицу, в которой вы можете редактировать значения, JTable является самым простым.Поместите следующее в JFrame
DefaultTableModel data = new DefaultTableModel(3 , 3);// rows, cols
JTable table = new JTable(data);
add(table);
pack();
setVisible(true);
Это также упростит изменение высоты и ширины матрицы с помощью data.setRowCount (newValue).