JTable
ボタンがクリックされたときに新しい s を作成する方法を教えてください( actionPerformed
)? そのようにいくつかの を追加したいと思いJTable
ます。
4607 次
2 に答える
5
recreate
その場合、またはJComponentsを使用する理由はありませんremove then add
のすべての更新は
JTable
、イベント ディスパッチ スレッドModel
で実行する必要があります
于 2012-09-04T13:35:17.193 に答える
4
これを作成する方法は次のとおりです。 SSCCEを提供しなかったため、さらに追加する方法を自分で見つけてください。
編集:
import java.awt.*;
import java.awt.Dimension;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
public class Stack extends JFrame implements ActionListener{
JTable table;
JPanel panel = new JPanel();
JButton button = new JButton("Add");
String data[][]={{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"}, {"hey","hey"},{"hey","hey"}
,{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"},{"hey","hey"}
,{"hey","hey"},{"hey","hey"}};
String columns[] = {"First","Second"};
public Stack(){
setLayout(new BorderLayout());
panel.setLayout(new BoxLayout(panel, BoxLayout.PAGE_AXIS));
panel.setPreferredSize(new Dimension(1024,768));
button.addActionListener(this);
add(panel,BorderLayout.CENTER);
add(button, BorderLayout.SOUTH);
}
public static void main(String [] a){
Stack s = new Stack();
s.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
s.pack();
s.setVisible(true);
}
@Override
public void actionPerformed(ActionEvent arg0) {
//panel.removeAll();
table =new JTable(data,columns);
panel.add(new JScrollPane(table));
repaint();
revalidate();
}
}
于 2012-09-04T13:29:49.340 に答える