



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 代码实现SQL Server数据库表中数据输出到图形用户界面这个可以实现。JTable的有一个方法是getTableModel().返回提供此 JTable 所显示数据的 TableModel. TableModel是一个接口,实际上返回的是DefaultTableModel类,它实现了TableModel接口。这个类中有一个方法是void addRow(Object rowData)。它就是将一行插入到JTable中。 不过JTable的setValueAt方法应该就可以实现。比如你需要插入100行数据,可以在线程的run方法中写一个循环,在循环中写两行代码,一行是setValueAt,一
2、行是刷新JTable,然后再让线程睡眠,这样一行一行的显示的效果就可以出来了! 可以用进度条来打发等待的时间,就像打开netbeans的那个进度条一样,这个可以用JProgressBar类。 import javax.swing.*; import java.awt.event.*; import java.awt.*; import javax.swing.table.*; public class Test extends JFrame implements ActionListener private JButton button1; private JButton button2; p
3、rivate JButton button3; private DefaultTableModel model; private JTable table; private JProgressBar bar; private JScrollPane scrollpane; private JPanel panel; public Test() button1=new JButton("演示1"); button2=new JButton("演示2"); button3=new JButton("清空"); panel=new JPan
4、el(); bar=new JProgressBar(0,100); String colnames="数据一","数据二" model=new DefaultTableModel(colnames,100); table=new JTable(model); scrollpane=new JScrollPane(table); panel.setLayout(new FlowLayout(); button1.addActionListener(this); button2.addActionListener(this); button3.addAct
5、ionListener(this); panel.add(button1); panel.add(button2); panel.add(button3); panel.add(bar); this.setLayout(new GridLayout(2,1); this.setSize(500,600); this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.add(scrollpane); this.add(panel); public void actionPerformed(ActionEvent e) String comm
6、and=e.getActionCommand(); if(command.equals("演示1") ShowModel show=new ShowModel(true); Thread thread=new Thread(show); thread.start(); else if(command.equals("演示2") ShowModel show=new ShowModel(false); Thread thread=new Thread(show); thread.start(); else String colnames="数据一
7、","数据二" model=new DefaultTableModel(colnames,100); table.setModel(model); private class ShowModel implements Runnable private boolean type;/当type为true时,则说明是“演示1”的线程,false则相反 public ShowModel(boolean type) this.type=type; public void run() if(type)/这个就是让线程睡眠,并且设置JTable的值 try for(int i=
8、0;i<100;i+) Test.this.table.setValueAt(String.valueOf(i),i,0); Test.this.table.setValueAt(String.valueOf(i),i,1); Thread.sleep(100); catch(Exception e) e.printStackTrace(); else/这个就是进度条的演示 try Test.this.table.setVisible(false); for(int i=0;i<100;i+) Test.this.table.setValueAt(String.valueOf(i),i,0); Test.this.table.setValueAt(String.valueOf(i),i,1); Test.this.bar.setValue(i+1); Test.this.bar.setString(String.valueOf(i+1)+"%"); Thread.sleep(40); if(i=99) Test.this.table.setVisible(true); JOptionPane.showMessageDialog(Test.this,"OK"); Test.this
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论