?? walletframe.txt
字號:
package cardinterface;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import data.*;
import com.borland.dbswing.*;
import user.*;
public class cardFrame extends JFrame implements ActionListener {
JPanel contentPane;
BorderLayout borderLayoutl = new BorderLayout();
//創(chuàng)建字體類
Font dialogl3 = new java.awt.Font("Dialog", 0' 13);
//創(chuàng)建查詢面板的控件
JPanel searchPanel = new JPanel();
JLabel jLabel1 = new JLabel();
JTextField jTextField1 = new JTextField();
JLabel jLabel2 = new JLabel();
JTextField jTextField2 = new JTextField();
JButton searchBtn = new JButton();
JButton exitBtn = new JButton();
//創(chuàng)建按鈕面板的控件
JPanel buttonPAnel = new JPanel()
JLabel jLabel3 = new JLabel();
JTextField jTextField3 = new JTextField();
JButton depositBtn = new JButton();
JButton withdrawBtn = new JButton();
JButton getBalanceBtn = new JButton();
JLabel jLabel4 = new JLabel();
JTextField jTextField4 = new JTextField();
//創(chuàng)建數(shù)據(jù)顯示類
TableScrollPane tableScrollPane1 = new TableScrollPane();
JdbTable jdbTable1 = new JdbTable();
//創(chuàng)建數(shù)據(jù)模塊
cardData wallteData1;
//創(chuàng)建用戶類
User user = null;
public cardFrame(User user) {
this.user = user;
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
private void jbInit() throws Exception {
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(borderLayout1);
this.setSize(new Dimension(500, 400));
this.setTitle(user.getUserName() + "的錢包管理窗口“);
//創(chuàng)建數(shù)據(jù)模塊
cardData1 new cardData();
//顯示用戶的記錄
cardData1.checkUser(user.getUserName(), user.getUserPassword());
//設(shè)置標(biāo)簽的屬性
jLabel1.setText("開始日期:");
jLabel1.setFont(dialog13);
jLabel2.setText("結(jié)束日期:");
jLabel2.setFont(dialog13);
jLabel3.setText("金額:");
jLabel3.setFont(dialog13);
jLabel4.setText("余額:");
jLabel4.setFont(dialog13);
//設(shè)置編輯框的屬性
jTextField1.setPreferredSize(new Dimension(80,22));
jTextField1.setFont(dialog13);
jTextField2.setPreferredSize(new Dimension(80,22));
jTextField2.setFont(dialog13);
jTextField3.setPreferredSize(new Dimension(80,22));
jTextField3.setFont(dialog13);
jTextField4.setPreferredSize(new Dimension(80,22));
jTextField4.setFont(dialog13);
jTextField4.setEditable(false);
//設(shè)置按鈕的屬性
searchBtn.setText("查詢");
searchBtn.setActionCommand("search");
searchBtn.setFont(dialog13);
searchBtn.addActionListener(this);
exitBtn.setText("退出");
exitBtnseaActionCommand("exit");
exitBtn.setFont(dialog13);
exitBtn.addActionListener(this);
//將查詢控件加入查詢面板
searchPanel.add(jLabel1,null);
searchPanel.add(jTextField1,null);
searchPanel.add(jLabel2,null);
searchPanel.add(jTextField2,null);
searchPanel.add(searchBtn,null);
searchPanel.add(exitBtn,null);
//設(shè)置按鈕的屬性
depositBtn.setText("存款");
depositBtn.setActionCommand("deposit");
depositBtn.setFont(dialog13);
depositBtn.addActionListener(this);
withdrawBtn.setText("取款");
withdrawBtn.setActionCommand("withdraw");
withdrawBtn.setFont(dialog13);
withdrawBtn.addActionListener(this);
getBalanceBtn.setText("查詢余額");
getBalanceBtn.setActionCommand("balance");
getBalanceBtn.Font(dialog13);
getBalanceBtn.addActionListener(this);
//將按鈕控件加入按鈕面板
buttonPanel.add(jLabel3,null);
buttonPanel.add(jTextField3,null);
buttonPanel.add(depositBtn,null);
buttonPanel.add(withdrawBtn,null);
buttonPanel.add(getBalanceBtn,null);
buttonPanel.add(jLabel4,null);
buttonPanel.add(jTextField4,null);
//設(shè)置數(shù)據(jù)表格的數(shù)據(jù)源
jdbTable1.setDataSet(cardData1.getcardDataSet());
//使數(shù)據(jù)表格不可編輯
jdbTable1.setEditable(false);
//將數(shù)據(jù)表格加入數(shù)據(jù)滾動框
tableScrollPane1.getViewport().add(jdbTable1 ,null);
//為窗口面板加入各個控件
contentpane.add(searchPanel,BorderLayout.NORTH);
contentpane.add(tableScrollPane1,BorderLayout.CENTER);
contentpane.add(buttonPanel,BorderLayout.SOUTH);
}
protected void processWindowEvent(WindowEvent e) {
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
//單擊按鈕方法
public void actionPerformed(ActionEvent e) {
//取得按鈕的動作字符串
String actionCommand = e.getActionCommand().trim();
//單擊按鈕的處理代碼
if (actionCommand.equals("deposit")) {
//取得金額
String amountStr = jTextField3.getText().trim();
if(!((new NumberVerify()).verifyNum(amountSTR))){
JOptionPane.showMessageDialog(null,"請輸入金額輸入框內(nèi)輸入數(shù)字,且該數(shù)字必須大于0");
return;
}
double amount +Double.parseDouble(amountStr);
//執(zhí)行存款操作
double balance = cardData1.deposit(Integer.parseInt(user.getUserId()),amount);
//顯示錢包的余額
jTextField4.setText(string.valueOf(balance));
}else if(actionCommand.equals("withdraw")){
//取得金額
String amountStr = jTextField3.getText().trim();
if(!((new NumberVerify()).verifyNum(amountStr))){
JOptionPane.showMessageDialog(null,"請輸入金額輸入框內(nèi)輸入數(shù)字,且該數(shù)字必須大于0");
return;
}
double amount = Double.parseDouble(amountStr);
//執(zhí)行取款操作
double balance=cardData1.withdraw(Integer.parseInt(user.getUserId()),amount);
if(balance == -1){
JOptionPane.showMessageDialog(null,"取款金額" + amountStr + "大于余額" +cardData1.getBalance());
return;
//顯示錢包的余額
jtextField4.setText(String.valueOf(balance));
}else if(actionCommand.equals("balance")){
//取得錢包的余額
double balance = cardData1.getBalance();
//顯示錢包的余額
jtextField4.setText(String.valueOf(balance));
}else if(actionCommand.equals("search")){
//創(chuàng)建日期檢查類
CheckDate checkDate = new CheckDate();
int[] startDateints = new int[3];
int[] endDateints = new int[3];
//取得日期字符串
String startDateStr = jTextField1.getText().trim();
String endDateStr = jTextField2.getText().trim();
//創(chuàng)建日期類
java.util.Calendar startCalendar = java.util.Calendar.getInstance();
java.util.Calendar endCalendar = java.util.Calendar.getInstance();
//如果開始日期字符為空,顯示全部記錄
if(startDateStr.length() == 0){
cardData1.setShowAll(true);
//重新顯示card數(shù)據(jù)類的數(shù)據(jù)
cardData1.getcardDataSet().refilter();
return;
}
//檢查開始日期字符串
startDateInts = checkDate.checkDate(startDateStr);
if(startDateInts[0] == -1){
JOptionPane.showMessageDialog(null,"正確的日期格式是yyyy-mm-dd(年-月-日)," + "如2004-1-1");
return;
}
//如果結(jié)束日期字符為空,顯示開始日期至當(dāng)前日期的記錄
if(endDateStr.length() == 0){
//取得開始日期
startCalendar.set(startDateInts[0],startDateInts[1],startDateInts[2],0,0,0);
cardData1.setShowAll(false);
//設(shè)置開始日期
cardData1.setStartDate(new java.sql.Timestamp(startCalendar.getTimeInMillis()));
//設(shè)置結(jié)束日期
cardData1.setEndDate(new java.sql.Timestamp(endCalendar.getTimeInMillis()));
//重新顯示card數(shù)據(jù)類的數(shù)據(jù)
cardData1.getcardDataSet().refilter();
return;
}
//檢查結(jié)束日期字符串
endDateInts = checkDate.checkDate(endDateStr);
if(endDateInts[0] == -1){
JOptionPane.showMessageDialog(null,"正確的日期格式是yyyy-mm-dd(年-月-日)," + "如2004-1-1");
return;
//取得開始日期
startCalendar.set(startDateInts[0],startDateInts[1],startDateInts[2],0,0,0);
//取得結(jié)束日期
endCalendar.set(endDateInts[0],endDateInts[1],endDateInts[2],23,59,59);
cardData1.setShowAll(false);
//設(shè)置開始日期
cardData1.setStartDate(new java.sql.Timestamp(startCalendar.getTimeInMillis()));
//設(shè)置結(jié)束日期
cardData1.setEndDate(new java.sql.Timestamp(endCalendar.getTimeInMillis()));
//重新顯示card數(shù)據(jù)類的數(shù)據(jù)
cardData1.getcardDataSet().refilter();
}else if(actionCommand.equals("exit")){
System.exit(0);
}
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -