【发布时间】:2013-06-25 02:05:48
【问题描述】:
我想使用 JTable 在 java 页面上显示特定的客户详细信息
当我输入客户 ID 然后按下然后我希望客户的所有详细信息在同一个窗口或另一个窗口上?
怎么做?我尝试使用以下代码但失败了。
import java.awt.BorderLayout;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.*;
import java.util.Vector;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
public abstract class Bill extends JFrame implements ActionListener
{
JTextField textFieldId;
JLabel l1;
JLabel l2;
JButton b2;
Container c = getContentPane();
ResultSet rs1 = null;
DefaultTableModel dtm = new DefaultTableModel();
Bill()
{
super("Shree Datta Digambar");
setBounds(140,250,777,555);
c.setLayout(null);
textFieldId = new JTextField();
l1 = new JLabel("New Customer Entry :-");
l2 = new JLabel("Customer Id");
l1.setBounds(10,10,340,20);
l2.setBounds(10,20,140,70);
textFieldId.setBounds(10,70,70,20);
b2 = new JButton("Ok");
b2.setBounds(10,160,50,20);
c.add(b2);
c.add(l1);
c.add(l2);
c.add(textFieldId);
setVisible(true);
setDefaultCloseOperation(EXIT_ON_CLOSE);
b2.addActionListener(this);
}
public static void main(String[] args)
{
Bill bc=new Bill() {};
}
public void actionPerformed(ActionEvent e)
{
System.out.println("You clicked the button");
if(e.getSource()==b2)
{
try
{
Connection con;
try {
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
} catch (ClassNotFoundException ex) {
Logger.getLogger(Bill.class.getName()).log(Level.SEVERE, null, ex);
}
con =DriverManager.getConnection("jdbc:odbc:devendra");
java.sql.Statement st = con.createStatement();
PreparedStatement ps = con.prepareStatement(null);
ps=con.prepareStatement("SELECT FROM Customer
where Customer_Id = ?");
rs1 = ps.executeQuery();
while(rs1.next())
{
dtm.addRow(new Object[]{
rs1.getString(1),rs1.getString(2),rs1.getInt(3),rs1.getString(4) });
}
JOptionPane.showMessageDialog(null,"You successfully Enter the Entry");
}
catch (SQLException s)
{
System.out.println("SQL code does not execute.");
JOptionPane.showMessageDialog(null,"Please Enter the Detail Correctly");
}
}
}}
【问题讨论】:
-
" i tried using following code but fail so any body can help me out from these error then please help me ..."-- 什么错误?哪条线? -
1) 请在句首加一个大写字母。还要为单词 I 使用大写字母,以及 JEE 或 WAR 等缩写词和首字母缩略词。这使人们更容易理解和帮助。 2) 请对代码、输入/输出和结构化文档(如 HTML 或 XML)使用代码格式。为此,请选择示例并单击消息发布/编辑表单上方的
{}按钮。 3)不要设置顶级容器的大小。而是布局内容并致电pack()。 -
4) Java GUI 可能必须在多个平台、不同的屏幕分辨率和使用不同的 PLAF 上工作。因此,它们不利于组件的精确放置。要为强大的 GUI 组织组件,请改用布局管理器或它们的组合,以及用于空白空间的布局填充和边框。
-
为什么不使用 WindowBuilder 来更轻松地设计您的 UI?
标签: java swing jdbc jtable odbc