본문 바로가기

OM

테이블에 행을 추가/삭제하는 프로그램


TableExample.java===================================================================================

import java.awt.*;
import javax.swing.*;
import javax.swing.table.*;

public class TableExample extends JApplet
{
    public void init()
    {
        Container contentPane = getContentPane();

        String colNames[] = {"이름", "나이", "성별"};
        DefaultTableModel model = new DefaultTableModel(colNames, 0);
        JTable table = new JTable(model);

        contentPane.add(new JScrollPane(table), BorderLayout.CENTER);

        JPanel panel = new JPanel();

        JTextField text1 = new JTextField(6);
        JTextField text2 = new JTextField(3);
        JTextField text3 = new JTextField(2);

        JButton button1 = new JButton("추가");
        JButton button2 = new JButton("삭제");

        panel.add(new JLabel("이름"));
        panel.add(text1);
        panel.add(new JLabel("나이"));
        panel.add(text2);
        panel.add(new JLabel("성별"));
        panel.add(text3);
        panel.add(button1);
        panel.add(button2);

        contentPane.add(panel, BorderLayout.SOUTH);

        button1.addActionListener(new AddActionListener(table, text1, text2, text3));
        button2.addActionListener(new RemoveActionListener(table));
    }
}

=====================================================================================================

AddActionListener.java===============================================================================

import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

class AddActionListener implements ActionListener
{
    JTable table;
    JTextField text1, text2, text3;

    AddActionListener(JTable table, JTextField text1, JTextField text2, JTextField text3)
    {
        this.table = table;
        this.text1 = text1;
        this.text2 = text2;
        this.text3 = text3;
    }

    public void actionPerformed(ActionEvent e)
    {
        String arr[] = new String[3];
        arr[0] = text1.getText();
        arr[1] = text2.getText();
        arr[2] = text3.getText();

        DefaultTableModel model = (DefaultTableModel) table.getModel();
        model.addRow(arr);
    }
}

=====================================================================================================

RemoveActionListener.java============================================================================

import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

class RemoveActionListener implements ActionListener
{
    JTable table;

    RemoveActionListener(JTable table)
    {
        this.table = table;
    }

    public void actionPerformed(ActionEvent e)
    {
        int row = table.getSelectedRow();

        if(row == -1)
        {
            return;
        }

        DefaultTableModel model = (DefaultTableModel) table.getModel();
        model.removeRow(row);
    }
}

=====================================================================================================

'OM' 카테고리의 다른 글

동영상 플레이어 (FLVPlayback)  (0) 2008.04.10
3X3 Puz  (0) 2008.04.10
Card Match  (0) 2008.04.08
성적 그래프 프로그램  (0) 2008.04.07
htmlconverter  (0) 2008.04.04
에디트 플러스 자바설정  (0) 2008.03.20
가사가 표시되는 MP3 Player  (0) 2008.03.15
MP3 플레이어  (0) 2008.03.13
그림판  (0) 2008.03.13