读书人

跪求高手帮帮小弟我呀

发布时间: 2011-12-24 23:03:24 作者: rapoo

跪求高手帮帮我呀!
java.BookScan //调试此程序没任何问题,数据库数据也能读出

import java.awt.*;
import java.sql.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
import javax.swing.table.*;
import conn.ConnectServer;
public class BookScan extends JFrame implements ActionListener{
JTable table;
DefaultTableModel dtm;
Vector title=new Vector();
JScrollPane p1;
JPanel p2=new JPanel();
JButton b1=new JButton( "首页 ");
JButton b2=new JButton( "上页 ");
JButton b3=new JButton( "下页 ");
JButton b4=new JButton( "尾页 ");
JLabel bb=new JLabel( " ");
int count=0;
int pagesize=6;
int pagecount=0;
int page=1;
Statement stmt;
ResultSet rs;
public BookScan() {
String sql= "select bookid as 图书编号,bookname as 图书名称,booktype as 图书类别,bookpub as 出版社名称,bookauthor as 作者姓名,bookpubdate as 出版日期,incomedate as 进库日期,briefintro as 内容简介,yesnoborrow as 是否借出 from book ";
try{
stmt=ConnectServer.con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
rs=stmt.executeQuery(sql);
count=getcount();
pagecount=(int)count/pagesize+(count%pagesize==0?0:1);
ResultSetMetaData dbmd=rs.getMetaData();
for(int i=1;i <=dbmd.getColumnCount();i++)
title.addElement(dbmd.getColumnName(i));
dtm=new DefaultTableModel(null,title);
table=new JTable(dtm);
initTable();
table.setRowHeight(20);
p1=new JScrollPane(table);
if(pagecount!=0)


bb.setText( " <html> 第 <font color=blue> "+page+ " </font> 页 </html> ");
b1.addActionListener(this);
b2.addActionListener(this);
b3.addActionListener(this);
b4.addActionListener(this);
p2.add(b1);p2.add(b2);p2.add(b3);p2.add(b4);p2.add(bb);
this.getContentPane().add(p1, "Center ");
this.getContentPane().add(p2, "South ");
}catch(Exception e){System.out.println(e);dispose();}
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){try{
rs.close();stmt.close();ConnectServer.con.close();
}catch(SQLException ee){ee.printStackTrace();}
}
});
setTitle( "图书信息查询 ");setSize(1024,750);
setVisible(true);
}
void initTable(){
dtm.setRowCount(0);
try{
rs.beforeFirst();
for(int i=1;i <1+pagesize*(page-1);i++)
rs.next();
int j=0;
while(j <pagesize&&rs.next()){
j++;
Vector v1=new Vector();
for(int i=1;i <=title.size();i++)
v1.addElement(rs.getString(i));


dtm.addRow(v1);
}
}catch(SQLException e){e.printStackTrace();}
dtm.fireTableStructureChanged();
}
public int getcount(){
int n=0;
try{
if(rs.last()){
n=rs.getRow();
rs.beforeFirst();
return n;
}
else
return 0;
}catch(SQLException e){return 0;}
}
public void actionPerformed(ActionEvent e){
if(e.getSource()==b1){page=1;}
else if(e.getSource()==b2){if(page> 1)page=page-1;}
else if(e.getSource()==b3){if(page <pagecount)page=page+1;}
else if(e.getSource()==b4){page=pagecount;}
initTable();
bb.setText( " <html> 第 <font color=blue> "+page+ " </font> 页 </html> ");
}
public static void main(String args[]) {
Font font = new Font( "JFrame ", Font.PLAIN, 14);
Enumeration keys = UIManager.getLookAndFeelDefaults().keys();
while (keys.hasMoreElements()) {
Object key = keys.nextElement();
if (UIManager.get(key) instanceof Font)
UIManager.put(key, font);


}
if (!ConnectServer.conn( "jdbc:odbc:mymis ", "sa ", "mima ")) {
JOptionPane.showMessageDialog(null, "数据库连接失败! ");
System.exit(0);
}
new BookScan();
}
}




请问在主界面菜单中怎么调用它呢,我的主界面中这样调用它为什么读不出数据呀?

public void actionPerformed(ActionEvent e) {
if (e.getSource() == menuItem311) {
BookScan dlg=new BookScan();
} else if (e.getSource() == menuItem13) {
dispose();
System.exit(0);
}
}





哪位高手帮帮我呀!!!!!!!!!


[解决办法]
UP UP
[解决办法]
BookScan dlg=new BookScan();
dlg.setVisible(true);
[解决办法]
SWING的怎么发J2ME里了
[解决办法]
跟踪进去看看
[解决办法]
没有绘制动作啊 ~~当然看不到了~~~

读书人网 >J2ME开发

热点推荐