Swing. Увеличение числа ячеек в JTable - Java
Формулировка задачи:
Всем добрый день! Есть проблема, которая пока не решается. Программа должна увеличивать/уменьшать по кнопке "+" и "-" размер таблицы. Но размер не изменяется. Видимо надо как-то добавлять потоки, но информации я не нашел. Может кто опытным глазом посмотрит. Спасибо.
Main:
import javax.swing.*; import javax.swing.table.TableColumn; import javax.swing.table.TableModel; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class MatrixForm { public int row = 2; public int column = 2; public MatrixForm(){ //////////////////// фрейм //////////////////////////////////////// JFrame frame = new JFrame("Frame"); frame.setDefaultCloseOperation(frame.EXIT_ON_CLOSE); frame.setSize(600, 400); frame.setLocationRelativeTo(null); frame.setLayout(null); ///////////// создали панель и ползунок ///////////////////// JPanel panel = new JPanel(); panel.setBackground(Color.DARK_GRAY); JScrollPane pane = new JScrollPane(panel); pane.setBounds(50, 50, 200, 100); frame.add(pane); panel.setLayout(new FlowLayout()); ////////////////////////кнопки + и - //////////////////////// JButton butMinus = new JButton("-"); JButton butPlus = new JButton("+"); butMinus.setBounds(80, 170, 50, 20); frame.add(butMinus); butPlus.setBounds(130, 170, 50, 20); frame.add(butPlus); ////////////// добавили события для ктопок //////////// MyActionPlus ap = new MyActionPlus(); butPlus.addActionListener(ap); MyActionMinus am = new MyActionMinus(); butMinus.addActionListener(am); /////////////////// создали таблицу //////////////////////////// JTable table = new JTable(row, column); TableModel model = table.getModel(); TableColumn tc = null; table.setRowHeight(20); for (int i = 0;i < model.getColumnCount(); i++){ tc = table.getColumnModel().getColumn(i); tc.setPreferredWidth(30); } panel.add(table); frame.setVisible(true); } public class MyActionPlus implements ActionListener { public void actionPerformed(ActionEvent e) { row++; column++; } } public class MyActionMinus implements ActionListener { public void actionPerformed(ActionEvent e) { row--; column--; } } }
import javax.swing.*; import javax.swing.table.TableColumn; import javax.swing.table.TableModel; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; public class Main{ public static void main(String[] args){ SwingUtilities.invokeLater(new Runnable() { public void run() { new MatrixForm(); } }); } }
Решение задачи: «Swing. Увеличение числа ячеек в JTable»
textual
Листинг программы
public class MyActionPlus implements ActionListener { public void actionPerformed(ActionEvent e) { row++; column++; table.addColumn(Что-то тут); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д