阅读背景:

JComboBox:如何解决JComboBox和ItemListener中的异常

来源:互联网 
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class AddBook extends JPanel implements ActionListener
{
    JLabel book_name_lbl,author_lbl,isbn_lbl,available_lbl,new_lbl,total_book_lbl,title_lbl;
    JTextField isbn_text,available_text,new_text,total_book_text;
    JComboBox book_name_box,author_box;
    JButton submit_btn,exit_btn;
        Connection conn;
        Statement smtp;
        ResultSet rs;
        PreparedStatement psmtp;
        String book,auther;
    public AddBook(Connection c)
    {
            conn = c;

        setLayout(new GridBagLayout());

        GridBagConstraints gbc1 = new GridBagConstraints();
        gbc1.insets = new Insets(10,10,10,10);

        title_lbl = new JLabel("Book Record Update");
        title_lbl.setFont(new Font("Goudy Old Style",Font.BOLD,30));
        gbc1.gridx = 0;
        gbc1.gridy = 0;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.gridwidth = 2;
        gbc1.insets = new Insets(10,3,30,3);
        gbc1.anchor = GridBagConstraints.CENTER;
        add(title_lbl,gbc1);

        book_name_lbl = new JLabel("Book Name :");
        gbc1.gridx = 0;
        gbc1.gridy = 1;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.gridwidth = 1;
        gbc1.insets = new Insets(10,10,10,10);
        gbc1.anchor = GridBagConstraints.WEST;
        add(book_name_lbl,gbc1);

        book_name_box = new JComboBox();
                book_name_box.addItem("Select book");
            try
        {
            smtp = conn.createStatement();
            rs = smtp.executeQuery("select BOOK_NAME from BOOK_NAME");

            while(rs.next())
            {
                String book_name = rs.getString("BOOK_NAME");
                                book_name_box.addItem(book_name);
            }
        }
        catch(SQLException e)
        {
            e.printStackTrace();
        }
               book_name_box.addActionListener(this);

        gbc1.gridx = 1;
        gbc1.gridy = 1;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        gbc1.fill = GridBagConstraints.HORIZONTAL;
        add(book_name_box,gbc1);

        author_lbl = new JLabel("Author Name :");
        gbc1.gridx = 0;
        gbc1.gridy = 2;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(author_lbl,gbc1);
// author combox add
                author_box = new JComboBox();
                author_box.addItem("Select Author");
                 author_box.addActionListener(this);
        gbc1.gridx = 1;
        gbc1.gridy = 2;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        add(author_box,gbc1);

        isbn_lbl = new JLabel("ISBN :");
        gbc1.gridx = 0;
        gbc1.gridy = 3;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(isbn_lbl,gbc1);

        isbn_text = new JTextField(15);
                isbn_text.setEditable(true);
                isbn_text.setEditable(true);
        gbc1.gridx = 1;
        gbc1.gridy = 3;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        add(isbn_text,gbc1);

        new_lbl = new JLabel("New Book :");
        gbc1.gridx = 0;
        gbc1.gridy = 4;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(new_lbl,gbc1);

        new_text = new JTextField(15);
        gbc1.gridx = 1;
        gbc1.gridy = 4;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        add(new_text,gbc1);

        available_lbl = new JLabel("Available Book :");
        gbc1.gridx = 0;
        gbc1.gridy = 5;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(available_lbl,gbc1);

        available_text = new JTextField(15);
                available_text.setEditable(false);
        gbc1.gridx = 1;
        gbc1.gridy = 5;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        add(available_text,gbc1);

        total_book_lbl = new JLabel("Total Book :");
        gbc1.gridx = 0;
        gbc1.gridy = 6;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(total_book_lbl,gbc1);

        total_book_text = new JTextField(15);
                total_book_text.setEditable(false);
        gbc1.gridx = 1;
        gbc1.gridy = 6;
        gbc1.ipadx = 0;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.EAST;
        add(total_book_text,gbc1);

        submit_btn = new JButton("Submit");
                //submit_btn.setEnabled(false);
        gbc1.gridx = 0;
        gbc1.gridy = 7;
        gbc1.ipadx = 20;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.WEST;
        add(submit_btn,gbc1);

        exit_btn = new JButton("Reset");
        gbc1.gridx = 1;
        gbc1.gridy = 7;
        gbc1.ipadx = 20;
        gbc1.ipady = 0;
        gbc1.anchor = GridBagConstraints.CENTER;
        gbc1.fill = GridBagConstraints.NONE;
        add(exit_btn,gbc1);

    }
    public void actionPerformed(ActionEvent e)
    {
        if((JComboBox) e.getSource()==book_name_box)
        {
                        try
                        {
                            while(author_box.getItemCount()!=0)
                            {
                author_box.removeItemAt(0);
                            }
                            author_box.addItem("Select Author");
                            book=(String) book_name_box.getSelectedItem();
                          if(!(book.equals("")) || !(book.equals("Select book")))
                            {

                                    psmtp = conn.prepareStatement("select AUTHOR_NAME from BOOK_TABLE where BOOK_NAME=?");
                                    psmtp.setString(0,book);
                                    rs=psmtp.executeQuery();
                                    while(rs.next())
                                    {
                                            String auther_name = rs.getString("AUTHOR_NAME").toString();
                                            author_box.addItem(auther_name);
                                    }
                            }
                            else
                            {
                                    isbn_text.setText("");
                                    new_text.setText("");
                                    available_text.setText("");
                                    total_book_text.setText("");
                                    //submit_btn.setEnabled(false);
                            }
                        }
                        catch(SQLException se)
                        {

                        }
        }
                else if((JComboBox) e.getSource()==author_box)
                {
                        try
                        {
                            auther=(String) author_box.getSelectedItem();
                          if(!(auther.equals("")) || auther!=null || !(auther.equals("Select Author")))
                            {
                                String query = "select ISBN, AVAILABLE_BOOK, TOTAL_BOOK from BOOK_TABLE where BOOK_NAME = ? and AUTHOR_NAME = ?";
                                psmtp=conn.prepareStatement(query);
                                psmtp.setString(1,book);
                                psmtp.setString(2, auther);
                                rs = psmtp.executeQuery();
                                while(rs.next())
                                {
                                    String isbn = rs.getString("ISBN").toString();
                                    int ava_book = rs.getInt("AVAILABLE_BOOK");
                                    int total_book = rs.getInt("TOTAL_BOOK");
                                    isbn_text.setText(isbn);
                                    available_text.setText(ava_book+"");
                                    total_book_text.setText(total_book+"");
                                }
                            }
                            else
                            {
                                System.out.println("3");
                                    isbn_text.setText("");
                                    new_text.setText("");
                                    available_text.setText("");
                                    total_book_text.setText("");
                            }
                        }
                        catch(SQLException se)
                        {

                        }
        }
    }
}
import java.awt.Font;
import java.awt.GridBagCo



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: