现有一个跑马灯形式的滚动窗口类Frame另一个类是DBconDBcon现在已经写好,能和数据库连接,也能查看到我需要看的数据,但如何在Frame类里面把DBcon的数据滚动显示出来?代码如下:Frame类:...
现有一个跑马灯形式的滚动窗口类 Frame 另一个类是DBcon DBcon现在已经写好,能和数据库连接,也能查看到我需要看的数据, 但如何在Frame类里面把DBcon的数据滚动显示出来?
代码如下:
Frame类:
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.HeadlessException;
import java.awt.Point;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentAdapter;
import java.awt.event.ComponentEvent;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.sql.DriverManager;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JViewport;
import javax.swing.Timer;
public class Frame extends JFrame {
private Timer timer;
private JLabel view;
private JViewport window;
public static void main(String[] args)
{
JFrame frm = new Frame("");
frm.setDefaultCloseOperation(EXIT_ON_CLOSE);
frm.pack();
frm.setSize(Toolkit.getDefaultToolkit().getScreenSize().width, frm.getHeight());
frm.setVisible(true);
}
public Frame(String title) throws HeadlessException
{
super(title);
initComponents();
Toolkit t=this.getToolkit();
Dimension d=t.getScreenSize();
setBounds( 0 , 9*d.height/10 , d.width , d.height/10 );
setUndecorated(true);
addComponentListener(new ComponentAdapter() {
public void componentResized(ComponentEvent e)
{
anchor = new Point();
anchor.x = -window.getExtentSize().width;
timer.start();
}
});
addMouseListener(new MouseAdapter() {
public void mouseEntered(MouseEvent me) {
timer.stop();
}
});
addMouseListener(new MouseAdapter() {
public void mouseExited(MouseEvent me) {
timer.restart();
}
});
timer = new Timer(100, new ActionListener() {
public void actionPerformed(ActionEvent e)
{
animate();
}
});
timer.setInitialDelay(0);
}
private void initComponents()
{
view = new JLabel("sssssssss");
view.setFont(Font.decode("Dialog-BOLD-36"));
view.setForeground(Color.BLUE);
window = new JViewport();
window.setView(view);
getContentPane().add(window);
}
Point anchor;
private void animate()
{
Dimension extSize = window.getExtentSize();
Dimension viewSize = view.getPreferredSize();
anchor.x += 10;
window.setViewPosition(anchor);
if (anchor.x > viewSize.width)
anchor.x = -extSize.width;
}
}
DBcon类:
import java.sql.*;
public class test1{
public static void main(String args[]){
Connection con;
Statement sql;
ResultSet rs;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e){
System.out.println(""+e);
}
try{
con=DriverManager.getConnection("jdbc:odbc:db2","","");
sql=con.createStatement();
rs=sql.executeQuery("Select * FROM user");
while(rs.next()){
String name=rs.getString(1);
System.out.println("姓名:"+name);
}
con.close();
}
catch(SQLException el){}
}
}
如何在Frame类里面将DBcon查到的内容显示出来呢?我现在Frame显示的内容是自己固定输入的,我想要把输入内容从数据库里掉出来,显示数据库的内容.
我的理解是view = new JLabel("sssssssss"); 这个括号里的内容显示是固定的,要变成数据库的内容是不是该改成一个什么方法还是什么,请问要如何改,除了改这里,其他地方还要改吗?
不好意思,我是JAVA新手,不太会,问的问题可能有点肤浅,但还是麻烦各位大虾不嫌弃的帮我解答解答,再此万分感谢,顺便祝大家圣诞快乐,
展开