2016-10-09 2 views
-2

Jtableセルに直接データを挿入しようとしています。私は、EnterキーまたはTabキーを押してセルでデータセルを挿入し、終了セルに達したときにユーザーがEnterキーを押すと自動的にデータを挿入する新しい行を追加する必要があります。Javaのセルによってjtableセルに直接データを挿入する

私のJframeのGUIを添付しています。

enter image description here

+0

を。しばらくすると、この問題について[このコミュニティの議論](http://meta.stackoverflow.com/q/326569)をお読みください。 – halfer

答えて

0

あなたはこの試すことができます:私たちはあなたの緊急度は我々ではなく、ボランティアを急いでしようとする試みは、通常、当然のdownvotesのスルーにつながることを、ここで言いたい

import java.awt.event.KeyAdapter; 
import java.awt.event.KeyEvent; 
import javax.swing.JFrame; 
import javax.swing.JScrollPane; 
import javax.swing.JTable; 
import javax.swing.SwingUtilities; 
import javax.swing.table.DefaultTableModel; 

public class Main 
{ 
    public static void main(String[] args) 
    { 
     SwingUtilities.invokeLater(() -> { 
      JFrame frame = new JFrame(); 
      frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 

      Object data[][] = { { "med1", "t1", "set1" }, 
        { "med2", "t2", "set2" } }; 
      Object columnNames[] = { "Col1", "Col2", "Col3" }; 
      DefaultTableModel model = new DefaultTableModel(data, columnNames); 
      JTable table = new JTable(model); 

      frame.add(new JScrollPane(table)); 
      frame.setSize(300, 150); 
      frame.setVisible(true); 

      table.addKeyListener(new KeyAdapter() 
      { 
       @Override 
       public void keyPressed(KeyEvent e) 
       { 
        if (e.getKeyCode() == KeyEvent.VK_ENTER 
          && table.getSelectedColumn() == table 
            .getColumnCount() - 1 
          && table.getSelectedRow() == table.getRowCount() 
            - 1) 
        { 
         model.addRow(new String[] { "", "", "" }); 
         table.setColumnSelectionInterval(0, 0); 
        } 
       } 
      }); 
     }); 
    } 
} 
+0

恐ろしい@Naruto Bijuモード...ありがとうあなたはそんなに男...それは私の問題を解決.. :) –

関連する問題