package com.mwq.frame;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Font;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.GridLayout;
import java.awt.Insets;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.FocusEvent;
import java.awt.event.FocusListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.net.URL;
import java.util.Calendar;
import java.util.Date;
import java.util.Vector;
import javax.swing.ButtonGroup;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.DefaultTableModel;
import com.mwq.dao.Dao;
import com.mwq.frame.check_out.DayDialog;
import com.mwq.frame.check_out.MonthDialog;
import com.mwq.frame.check_out.YearDialog;
import com.mwq.frame.manage.DeskNumDialog;
import com.mwq.frame.manage.MenuDialog;
import com.mwq.frame.manage.SortDialog;
import com.mwq.frame.user.UpdatePasswordDialog;
import com.mwq.frame.user.UserManagerDialog;
import com.mwq.mwing.MButton;
import com.mwq.mwing.MTable;
import com.mwq.tool.Today;
import com.mwq.tool.Validate;
public class TipWizardFrame extends JFrame {
private JLabel timeLabel;
private JTextField amountTextField;
private JTextField unitTextField;
private JTextField nameTextField;
private JTextField codeTextField;
private JComboBox numComboBox;
private JTextField changeTextField;
private JTextField realWagesTextField;
private JTextField expenditureTextField;
private ButtonGroup buttonGroup = new ButtonGroup();
private MTable rightTable;
private Vector<String> rightTableColumnV;
private Vector<Vector<Object>> rightTableValueV;
private DefaultTableModel rightTableModel;
private MTable leftTable;
private Vector<String> leftTableColumnV;
private Vector<Vector<Object>> leftTableValueV;
private DefaultTableModel leftTableModel;
private Vector<Vector<Vector<Object>>> menuOfDeskV;
private Dimension screenSize;
private final Dao dao = Dao.getInstance();
/**
* Launch the application
*
* @param args
*/
public static void main(String args[]) {
try {
TipWizardFrame frame = new TipWizardFrame(null);
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
/**
* Create the frame
*/
public TipWizardFrame(final Vector user) {
super();
setTitle(" T 科技");
setResizable(false);
setBounds(0, 0, 1024, 768);
setExtendedState(TipWizardFrame.MAXIMIZED_BOTH);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
screenSize = Toolkit.getDefaultToolkit().getScreenSize();
final JLabel topLabel = new JLabel();
topLabel.setPreferredSize(new Dimension(0, 100));
topLabel.setHorizontalAlignment(SwingConstants.CENTER);
URL topUrl = this.getClass().getResource("/img/top.jpg");
ImageIcon topIcon = new ImageIcon(topUrl);
topLabel.setIcon(topIcon);
getContentPane().add(topLabel, BorderLayout.NORTH);
final JSplitPane splitPane = new JSplitPane();// 创建分割面版对象
splitPane.setOrientation(JSplitPane.HORIZONTAL_SPLIT);// 设置为水平分割
splitPane.setDividerLocation(755);// 设置面版默认的分割位置
splitPane.setDividerSize(10);// 设置分割条的宽度
splitPane.setOneTouchExpandable(true);// 设置为支持快速展开/折叠分割条
splitPane.setBorder(new TitledBorder(null, "",
TitledBorder.DEFAULT_JUSTIFICATION,
TitledBorder.DEFAULT_POSITION, null, null));// 设置面版的边框
getContentPane().add(splitPane, BorderLayout.CENTER);// 将分割面版添加到上级容器中
final JPanel leftPanel = new JPanel();// 创建放于分割面版左侧的普通面版对象
leftPanel.setLayout(new BorderLayout());// 设置面板的布局管理器
splitPane.setLeftComponent(leftPanel);// 将普通面版对象添加到分割面版的左侧
final JLabel leftTitleLabel = new JLabel();
leftTitleLabel.setFont(new Font("", Font.BOLD, 14));
leftTitleLabel.setPreferredSize(new Dimension(0, 25));
leftTitleLabel.setText(" 签单列表:");
leftPanel.add(leftTitleLabel, BorderLayout.NORTH);
final JScrollPane leftScrollPane = new JScrollPane();
leftPanel.add(leftScrollPane);
menuOfDeskV = new Vector<Vector<Vector<Object>>>();
leftTableColumnV = new Vector<String>();
String leftTableColumns[] = { " ", "序 号", "商品编号", "商品名称", "单 位",
"数 量", "单 价", "金 额" };
for (int i = 0; i < leftTableColumns.length; i++) {
leftTableColumnV.add(leftTableColumns[i]);
}
leftTableValueV = new Vector<Vector<Object>>();
leftTableModel = new DefaultTableModel(leftTableValueV,
leftTableColumnV);
leftTableModel.addTableModelListener(new TableModelListener() {
public void tableChanged(TableModelEvent e) {// 通过表格模型监听器实现自动结账
int rowCount = leftTable.getRowCount();// 获得签单列表中的行数
float expenditure = 0.0f;// 默认消费 0 元
for (int row = 0; row < rowCount; row++) {// 通过循环计算消费金额
expenditure += Float.valueOf(leftTable.getValueAt(row, 7)
.toString());// 累加消费金额
}
expenditureTextField.setText(expenditure + "0");// 更新“消费金额”文本框
}
});
leftTable = new MTable(leftTableModel);
leftScrollPane.setViewportView(leftTable);
final JPanel rightPanel = new JPanel();// 创建放于分割面版右侧的普通面版对象
rightPanel.setLayout(new BorderLayout());
splitPane.setRightComponent(rightPanel);// 将普通面版对象添加到分割面版的右侧
final JLabel rightTitleLabel = new JLabel();
rightTitleLabel.setFont(new Font("", Font.BOLD, 14));
rightTitleLabel.setPreferredSize(new Dimension(0, 25));
rightTitleLabel.setText(" 开台列表:");
rightPanel.add(rightTitleLabel, BorderLayout.NORTH);
final JScrollPane rightScrollPane = new JScrollPane();
rightPanel.add(rightScrollPane);
rightTableColumnV = new Vector<String>();
rightTableColumnV.add("序 号");
rightTableColumnV.add("台 号");
rightTableColumnV.add("开台时间");
rightTableValueV = new Vector<Vector<Object>>();
rightTableModel = new DefaultTableModel(rightTableValueV,
rightTableColumnV);
rightTable = new MTable(rightTableModel);
rightTable.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
int rSelectedRow = rightTable.getSelectedRow();// 获得“开台列表”中的选中行
leftTableValueV.removeAllElements();// 清空“签单列表”中的所有行
leftTableValueV.addAll(menuOfDeskV.get(rSelectedRow));// 将选中台号的签单列表添加到“签单列表”中
leftTableModel.setDataVector(leftTableValueV, leftTableColumnV);// 刷新“签单列表”
leftTable.setRowSelectionInterval(0);// 选中“签单列表”中的第一行
numComboBox.setSelectedItem(rightTable.getValueAt(rSelectedRow,
1));// 同步选中“台号”下拉菜单中的相应台号
}
});
rightScrollPane.setViewportView(rightTable);
final JPanel bottomPanel = new JPanel();
bottomPanel.setPreferredSize(new Dimension(0, 230));
bottomPanel.setLayout(new BorderLayout());
getContentPane().add(bottomPanel, BorderLayout.SOUTH);
final JPanel orderDishesPanel = new JPanel();
orderDishesPanel.setBorder(new EtchedBorder(EtchedBorder.LOWERED));
bottomPanel.add(orderDishesPanel, BorderLayout.NORTH);
final JLabel numLabe
没有合适的资源?快使用搜索试试~ 我知道了~
酒店管理系统 Java Swing+SQL Server2005
共47个文件
java:20个
png:12个
jpg:9个
4星 · 超过85%的资源 需积分: 10 34 下载量 47 浏览量
2008-12-11
23:25:04
上传
评论 5
收藏 1.03MB RAR 举报
温馨提示
其中包括使用说明 按照说明 直接可以使用 确认可以运行 供大家学习 交流
资源推荐
资源详情
资源评论
收起资源包目录
.rar (47个子文件)
04
Database
db_DrinkeryManage_Log.LDF 1024KB
db_DrinkeryManage_Data.MDF 1.94MB
readme.doc 510KB
DrinkeryManage
.project 390B
src
com
mwq
dao
JDBC.java 1KB
Dao.java 8KB
BaseDao.java 3KB
DrinkeryManage.java 1KB
tool
Today.java 2KB
Validate.java 387B
mwing
MPanel.java 880B
MTable.java 2KB
MButton.java 527B
FixedColumnTablePanel.java 6KB
frame
check_out
YearDialog.java 3KB
MonthDialog.java 5KB
DayDialog.java 8KB
TipWizardFrame.java 41KB
LandFrame.java 11KB
user
UserManagerDialog.java 10KB
UpdatePasswordDialog.java 8KB
manage
MenuDialog.java 15KB
DeskNumDialog.java 8KB
SortDialog.java 6KB
img
desk.jpg 6KB
password.jpg 7KB
land_exit_over.png 2KB
exit.jpg 7KB
land_submit.png 2KB
land_submit_over.png 2KB
menu.jpg 7KB
land_exit.png 2KB
land_reset_over.png 2KB
land_exit_pressed.png 2KB
day.png 5KB
user.jpg 7KB
land_submit_pressed.png 2KB
rmb.jpg 6KB
sort.jpg 7KB
land_reset_pressed.png 2KB
land_background.jpg 119KB
year.png 5KB
month.png 5KB
land_reset.png 1KB
top.jpg 101KB
.fatjar 365B
.classpath 321B
共 47 条
- 1
资源评论
- 冭孩子氣2012-11-29学习参考还是不错的。
- arklucia2013-01-31不错,能用。。。
whboy019
- 粉丝: 0
- 资源: 4
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功