1

ボタンをクリックして値を抽出したいsaveJTextField行とJTable列から値を抽出します。さまざまな変数で値を抽出して保存する方法の大まかなアイデアが必要です。ボタン保存の下でこれらの保存アクションを実行したいと思います。

package build;

import java.awt.*;
import javax.swing.*;
import com.jgoodies.forms.layout.FormLayout;
import com.jgoodies.forms.layout.ColumnSpec;
import com.jgoodies.forms.layout.RowSpec;
import com.jgoodies.forms.factories.FormFactory;
import javax.swing.table.DefaultTableModel;
import javax.swing.border.TitledBorder;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;

public class Table_Edit {

    private JTextField textField;
    private JTable table;
    private String Table_Name = new String();

    public Table_Edit() {
        JFrame frame = new JFrame("Table");

        frame.setSize(600, 400);
        frame.getContentPane().setLayout(new FormLayout(new ColumnSpec[]{
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            FormFactory.DEFAULT_COLSPEC,
            FormFactory.RELATED_GAP_COLSPEC,
            ColumnSpec.decode("default:grow"),
            FormFactory.RELATED_GAP_COLSPEC,
            ColumnSpec.decode("default:grow"),},
            new RowSpec[]{
            FormFactory.RELATED_GAP_ROWSPEC,
            FormFactory.DEFAULT_ROWSPEC,
            FormFactory.RELATED_GAP_ROWSPEC,
            RowSpec.decode("default:grow"),
            FormFactory.RELATED_GAP_ROWSPEC,
            RowSpec.decode("default:grow"),}));

        JLabel lblTableName = new JLabel("Table Name :");
        frame.getContentPane().add(lblTableName, "2, 2, right, default");

        textField = new JTextField(Table_Name);
        textField.setComponentOrientation(ComponentOrientation.LEFT_TO_RIGHT);
        frame.getContentPane().add(textField, "4, 2, 9, 1, left, center");
        textField.setColumns(10);

        JScrollPane scrollPane = new JScrollPane();
        frame.getContentPane().add(scrollPane, "3, 4, 29, 1, fill, fill");

        table = new JTable();
        table.setFillsViewportHeight(true);
        scrollPane.setViewportView(table);
        table.setBorder(new TitledBorder(null, "",
            TitledBorder.CENTER, TitledBorder.TOP, null, null));
        table.setColumnSelectionAllowed(true);
        table.setCellSelectionEnabled(true);
        table.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
        table.setModel(new DefaultTableModel(
            new Object[][]{
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},
            {null, null, null, null},},
            new String[]{
            "Column Name", "Data Type", "NN", "PK"
        }) {
            Class[] columnTypes = new Class[]{
                String.class, Object.class, Boolean.class, Boolean.class
            };

            public Class getColumnClass(int columnIndex) {
                return columnTypes[columnIndex];
            }
        });
        table.getColumnModel().getColumn(0).setResizable(false);
        table.getColumnModel().getColumn(0).setPreferredWidth(106);
        table.getColumnModel().getColumn(1).setResizable(false);
        table.getColumnModel().getColumn(1).setPreferredWidth(92);
        table.getColumnModel().getColumn(2).setResizable(false);
        table.getColumnModel().getColumn(2).setPreferredWidth(26);
        table.getColumnModel().getColumn(3).setResizable(false);
        table.getColumnModel().getColumn(3).setPreferredWidth(30);

        JPanel panel = new JPanel();
        frame.getContentPane().add(panel, "32, 6, right, fill");

        JButton Save = new JButton("Save");
        Save.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {

                System.out.print(Table_Name);
            }
        });
        Save.setMaximumSize(new Dimension(33, 19));
        Save.setIcon(new ImageIcon(Table_Edit.class.getResource(
            "/com/sun/java/swing/plaf/windows/icons/TreeOpen.gif")));
        panel.add(Save);

        JButton btnNewButton_1 = new JButton("Exit");
        btnNewButton_1.setIcon(new ImageIcon(Table_Edit.class.getResource(
            "/javax/swing/plaf/metal/icons/ocean/close.gif")));
        panel.add(btnNewButton_1);


        frame.setVisible(true);
    }

    public static void main(String[] args) {
        new Table_Edit();
    }
}
4

3 に答える 3

0

jtextfield からメソッドを呼び出して、次のようなgetText形式で textfield の内容を取得できます。String

String myString = textField.getText();
于 2013-03-31T12:40:58.957 に答える