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(Что-то тут);
- }
- }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д