?? commodityinputframe.java
字號:
import java.sql.*;
import javax.swing.*;
//import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
public class CommodityInputFrame extends JDialog
{
private Connection Commodityconnection;
private Statement Commoditystatement;
//private Statement InsertInputstatement;
private ResultSet CommodityresultSet;
private ResultSetMetaData rsMetaData;
//GUI變量定義
private JLabel CommoditySerialLabel ;
private JLabel CommodityNameLabel ;
private JLabel CommodityPriceLabel ;
private JLabel CommodityDiscountLabel ;
private JTextField CommoditySerialField;
private JTextField CommodityNameField;
private JTextField CommodityPriceField;
private JTextField CommodityDiscountField;
private JButton SubmmitButton ;
private JButton cancelButton ;
private JFrame parent;
public CommodityInputFrame(JFrame parent, boolean modal)
{
super(parent, modal);
this.parent = parent;
pack();
initComponents();
}
private void initComponents()
{
GridBagLayout layout = new GridBagLayout();
Container contents = getContentPane();
contents.setLayout(layout);
GridBagConstraints constraints = new GridBagConstraints();
setTitle ("商品信息錄入窗口");
addWindowListener(new WindowAdapter ()
{
public void windowClosing(WindowEvent event)
{
setVisible(false);
dispose();
}
});
CommoditySerialField = new JTextField(); // needed below
CommoditySerialField.setPreferredSize(new Dimension(150, 25));
CommoditySerialLabel = new JLabel();
CommoditySerialLabel.setText("商 品 編 號: ");
CommoditySerialLabel.setLabelFor(CommoditySerialField);
constraints.weightx = 100;
constraints.weighty = 100;
constraints.gridx = 0;
constraints.gridy = 0;
constraints.gridwidth = 1;
constraints.gridheight = 1;
contents.add(CommoditySerialLabel, constraints);
constraints.gridx = 1;
constraints.gridy = 0;
constraints.gridwidth = 2;
constraints.gridheight = 1;
contents.add(CommoditySerialField, constraints);
//2
CommodityNameField = new JTextField(); // needed below
CommodityNameField.setPreferredSize(new Dimension(150, 25));
CommodityNameLabel = new JLabel();
CommodityNameLabel.setText("商 品 名 稱: ");
CommodityNameLabel.setLabelFor(CommodityNameField);
constraints.gridx = 0;
constraints.gridy = 1;
constraints.gridwidth = 1;
constraints.gridheight = 1;
contents.add(CommodityNameLabel, constraints);
constraints.gridx = 1;
constraints.gridy = 1;
constraints.gridwidth = 2;
constraints.gridheight = 1;
contents.add(CommodityNameField, constraints);
//3
CommodityPriceField = new JTextField(); // needed below
CommodityPriceField.setPreferredSize(new Dimension(150, 25));
CommodityPriceLabel = new JLabel();
CommodityPriceLabel.setText("商 品 價 格: ");
CommodityPriceLabel.setLabelFor(CommodityPriceField);
constraints.gridx = 0;
constraints.gridy = 2;
constraints.gridwidth = 1;
constraints.gridheight = 1;
contents.add(CommodityPriceLabel, constraints);
constraints.gridx = 1;
constraints.gridy = 2;
constraints.gridwidth = 2;
constraints.gridheight = 1;
contents.add(CommodityPriceField, constraints);
//4
CommodityDiscountField = new JTextField(); // needed below
CommodityDiscountField.setPreferredSize(new Dimension(150, 25));
CommodityDiscountLabel = new JLabel();
CommodityDiscountLabel.setText("商 品 折 扣: ");
CommodityDiscountLabel.setLabelFor(CommodityDiscountField);
constraints.gridx = 0;
constraints.gridy = 3;
constraints.gridwidth = 1;
constraints.gridheight = 1;
contents.add(CommodityDiscountLabel, constraints);
constraints.gridx = 1;
constraints.gridy = 3;
constraints.gridwidth = 2;
constraints.gridheight = 1;
contents.add(CommodityDiscountField, constraints);
JPanel buttonPanel = createButtonPanel(); // sets global loginButton
constraints.gridx = 0;
constraints.gridy = 4;
constraints.gridwidth = 3;
constraints.gridheight = 2;
contents.add(buttonPanel, constraints);
setSize( 500, 300 );
setResizable(false);
setLocation(200,100);
}
private JPanel createButtonPanel() {
JPanel panel = new JPanel();
panel.setLayout(new BoxLayout(panel, 0));
//panel.setSize( 490, 40 );
//panel.setBorder(BorderFactory.createEtchedBorder());
// login button (global variable)
SubmmitButton = new JButton();
SubmmitButton.setText("確 定");
SubmmitButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
CommodityInfoInput();
}
});
panel.add(SubmmitButton);
// space
panel.add(Box.createRigidArea(new Dimension(200,0)));
// cancel button
JButton cancelButton = new JButton();
cancelButton.setText("返 回");
cancelButton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent event)
{
dispose();
}
});
panel.add(cancelButton);
// space
Vector buttons = new Vector(2);
buttons.add(SubmmitButton);
buttons.add(cancelButton);
equalizeComponentSizes(buttons);
buttons.removeAllElements(); // simplify gc
return panel;
} // createButtonPanel()
private void equalizeComponentSizes(java.util.List components) {
// Get the largest width and height
int i = 0;
Dimension maxPreferred = new Dimension(0,0);
JComponent oneComponent = null;
Dimension thisPreferred = null;
for (i = 0; i < components.size(); ++i) {
oneComponent = (JComponent)components.get(i);
thisPreferred = oneComponent.getPreferredSize();
maxPreferred.width =
Math.max(maxPreferred.width, (int)thisPreferred.getWidth());
maxPreferred.height =
Math.max(maxPreferred.height, (int)thisPreferred.getHeight());
}
// reset preferred and maximum size since BoxLayout takes both
// into account
for (i = 0; i < components.size(); ++i) {
oneComponent = (JComponent)components.get(i);
oneComponent.setPreferredSize((Dimension)maxPreferred.clone());
oneComponent.setMaximumSize((Dimension)maxPreferred.clone());
}
} // equalizeComponentSizes()
private void CommodityInfoInput()
{
if(
CommoditySerialField.getText().equals( "" )||
CommodityNameField.getText().equals( "" )||
CommodityPriceField.getText().equals( "" )||
CommodityDiscountField.getText().equals( "" ))
{
JOptionPane.showMessageDialog( this,"請填商品信息資料" );
//setTitle( "無記錄顯示" );
return;
}
String url = "jdbc:odbc:VipQuery";
String username = "";
String password = "";
//加載驅動程序以連接數據庫
try
{
Class.forName( "sun.jdbc.odbc.JdbcOdbcDriver" );
Commodityconnection = DriverManager.getConnection( url, username, password );
}
//捕獲加載驅動程序異常
catch ( ClassNotFoundException cnfex )
{
System.err.println("裝載 JDBC/ODBC 驅動程序失敗。" );
cnfex.printStackTrace();
System.exit( 1 ); // terminate program
}
//捕獲連接數據庫異常
catch ( SQLException sqlex )
{
System.err.println( "無法連接數據庫" );
sqlex.printStackTrace();
System.exit( 1 ); // terminate program
}
try
{
String CommodityQuery = "select * from COMMODITY_ID where 商品編號 = "+CommoditySerialField.getText()+"";
String CommodityInput = "insert into COMMODITY_ID VALUES("
+ CommoditySerialField.getText()+",'"+CommodityNameField.getText()+"',"
+ CommodityPriceField.getText()+","+CommodityDiscountField.getText()+")";
Commoditystatement = Commodityconnection.createStatement();
CommodityresultSet = Commoditystatement.executeQuery( CommodityQuery );
boolean moreRecords = CommodityresultSet.next();
if ( moreRecords )
{
JOptionPane.showMessageDialog( this,"對不起,此商品號已經被使用,請重新輸入" );
//setTitle( "無記錄顯示" );
Commodityconnection.close();
return;
}
//InsertInputstatement = Insertconnection.createStatement();
int insert = Commoditystatement.executeUpdate( CommodityInput );//executeUpdate返回一個整型值
if (insert == 1)
{
JOptionPane.showMessageDialog( this,"商品信息錄入成功!" );
CommoditySerialField.setText("");
CommodityNameField.setText("");
CommodityPriceField.setText("");
CommodityDiscountField.setText("");
}
}
catch ( SQLException sqlex )
{
sqlex.printStackTrace();
}
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -