不好意思,今晚头疼,所以下面代码特别恶心,就将就着看吧。/////////////////////////////////////////////UserListPanel .java
package test.swing;import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.table.*;
import java.util.*;public class UserListPanel extends JPanel implements ActionListener {
BorderLayout borderLayout1 = new BorderLayout();
JPanel _tabPanel = new JPanel();
BorderLayout borderLayout2 = new BorderLayout();
JPanel _btnPanel = new JPanel();
JButton _delBtn = new JButton();
JScrollPane _scrollPanel = new JScrollPane();
JTable _table = new JTable();
DefaultTableModel _model = new DefaultTableModel();
Vector _header = new Vector();
Vector _data = new Vector() ; public UserListPanel() {
try {
initTable();
initPanel();
}catch(Exception ex) {
ex.printStackTrace();
}
}
private void initTable(){
_header.add( "Name" );
_header.add( "Gender" );
_header.add( "Age" );
Vector aRec = null ;
aRec = new Vector() ;
aRec.add( "Bill" );
aRec.add( "M" );
aRec.add( "22" );
_data.add( aRec );
aRec = new Vector() ;
aRec.add( "Kelly" );
aRec.add( "F" );
aRec.add( "25" );
_data.add( aRec );
aRec = new Vector();
aRec.add("Hollon");
aRec.add("M");
aRec.add("32");
_data.add(aRec) ;
}
private void initPanel() throws Exception {
setLayout(borderLayout1);
_tabPanel.setLayout(borderLayout2);
_delBtn.setText("Delete");
add(_tabPanel, BorderLayout.CENTER);
_tabPanel.add(_scrollPanel, BorderLayout.CENTER);
_scrollPanel.getViewport().add(_table, null);
_model.setDataVector( _data , _header );
_table.setModel( _model );
add(_btnPanel, BorderLayout.SOUTH);
_btnPanel.add(_delBtn, null);
_delBtn.addActionListener( this );
}
public void actionPerformed(ActionEvent ae ){
int selIndex = _table.getSelectedRow() ;
if( selIndex < 0 || selIndex >= _table.getRowCount() ){
return ;
}
_model.getDataVector().remove( selIndex ) ;
_table.repaint();
}
}/////////////////////////////////////////////MainFrame.javapackage test.swing;import javax.swing.*;
import java.awt.*;
public class MainFrame extends JFrame {
BorderLayout borderLayout1 = new BorderLayout(); public MainFrame() {
try {
jbInit();
}
catch(Exception ex) {
ex.printStackTrace();
}
} void jbInit() throws Exception {
this.getContentPane().setLayout(borderLayout1);
this.getContentPane().add( new UserListPanel() ) ;
this.setSize( 200,150 );
this.show();
this.setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
}
public static void main(String args[]){
new MainFrame();
}
}
package test.swing;import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
import javax.swing.table.*;
import java.util.*;public class UserListPanel extends JPanel implements ActionListener {
BorderLayout borderLayout1 = new BorderLayout();
JPanel _tabPanel = new JPanel();
BorderLayout borderLayout2 = new BorderLayout();
JPanel _btnPanel = new JPanel();
JButton _delBtn = new JButton();
JScrollPane _scrollPanel = new JScrollPane();
JTable _table = new JTable();
DefaultTableModel _model = new DefaultTableModel();
Vector _header = new Vector();
Vector _data = new Vector() ; public UserListPanel() {
try {
initTable();
initPanel();
}catch(Exception ex) {
ex.printStackTrace();
}
}
private void initTable(){
_header.add( "Name" );
_header.add( "Gender" );
_header.add( "Age" );
Vector aRec = null ;
aRec = new Vector() ;
aRec.add( "Bill" );
aRec.add( "M" );
aRec.add( "22" );
_data.add( aRec );
aRec = new Vector() ;
aRec.add( "Kelly" );
aRec.add( "F" );
aRec.add( "25" );
_data.add( aRec );
aRec = new Vector();
aRec.add("Hollon");
aRec.add("M");
aRec.add("32");
_data.add(aRec) ;
}
private void initPanel() throws Exception {
setLayout(borderLayout1);
_tabPanel.setLayout(borderLayout2);
_delBtn.setText("Delete");
add(_tabPanel, BorderLayout.CENTER);
_tabPanel.add(_scrollPanel, BorderLayout.CENTER);
_scrollPanel.getViewport().add(_table, null);
_model.setDataVector( _data , _header );
_table.setModel( _model );
add(_btnPanel, BorderLayout.SOUTH);
_btnPanel.add(_delBtn, null);
_delBtn.addActionListener( this );
}
public void actionPerformed(ActionEvent ae ){
int selIndex = _table.getSelectedRow() ;
if( selIndex < 0 || selIndex >= _table.getRowCount() ){
return ;
}
_model.getDataVector().remove( selIndex ) ;
_table.repaint();
}
}/////////////////////////////////////////////MainFrame.javapackage test.swing;import javax.swing.*;
import java.awt.*;
public class MainFrame extends JFrame {
BorderLayout borderLayout1 = new BorderLayout(); public MainFrame() {
try {
jbInit();
}
catch(Exception ex) {
ex.printStackTrace();
}
} void jbInit() throws Exception {
this.getContentPane().setLayout(borderLayout1);
this.getContentPane().add( new UserListPanel() ) ;
this.setSize( 200,150 );
this.show();
this.setDefaultCloseOperation(this.DISPOSE_ON_CLOSE);
}
public static void main(String args[]){
new MainFrame();
}
}
解决方案 »
- 用eclipse打包后在生成exe文件显示无主方法,这可怎么办??
- JRE可扩展包「再发布包」
- 关于jacob读写word的问题?
- 如何解决JAVA中权限问题(在线等待)
- 500分求助 如何用jdk1.1编写File.io.listRoots(),
- 如何获得一个文件的大小?在线等待
- UP者有分:Java学习,路在何方???
- 金山词霸能在jb6下用么?看坛子上几为兄弟说可以,可是我在jb5下,词霸还是取不了词么,而且词霸2002的网站上也没什么补丁,就因为这个我后来才把jb5又给del了,各位能不能和我说词霸怎么在jb下取词,能取词的,你们的系统是什么?
- 如何实现文件对话框?
- Interger.tohexstring(int i)这个方法返回的是一个16进制数,我想让他返回的结果前面自动补0
- java在的MO开发中如何设置时间参数?
- 求救!一个小问题,关于变量名的
_model.fireTableDataChanged();
代替_table.repaint();
:)
不懂的可以查看API啊