package view;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.awt.event.*;
import java.sql.*;
import java.util.Vector;
public class ChuangKou extends JFrame{
int a=0;//kongzhihuiyuan
JButton bt1 = new JButton("查看会员");
JButton bt2 = new JButton("确定");
JButton bt3 = new JButton("结账");
JButton bt4 = new JButton("查看消费记录");
JButton bt5 = new JButton("操作仓库");
JButton bt6 = new JButton("创建新会员");
JLabel l1 = new JLabel("会员卡:");
JLabel l2 = new JLabel("姓名:");
JLabel l3 = new JLabel("电话:");
JLabel l4 = new JLabel("总价:");
JLabel l5 = new JLabel("0.00");//////////////////////
JLabel l6 = new JLabel("商品ID:");
JPanel p1= new JPanel();//会员卡
JPanel p2= new JPanel();//姓名电话
JPanel p3= new JPanel();//综上
JPanel p4= new JPanel();
JPanel p5= new JPanel();
JPanel p6= new JPanel();//
JScrollPane jsp = new JScrollPane();//设置了一个带滚动条的容器
DefaultTableModel model = new DefaultTableModel();//表格模型,可以储存
JTable jt = new JTable(model);//JTable类创建了一个表格并不负责储存表格中的数据,而是由表格模型负责储存
JTextField t1 = new JTextField(5);///
JTextField t2 = new JTextField(8);////
JTextField t3 = new JTextField(15);/////
JTextField t4 = new JTextField(15);//商品
Vector allvec = new Vector();//泛型机制,这样在Vector集合中存放元素的时候,将会采取安全检查,里面只可以放入xx的对象
///
Connection con;
String dURL;
public ChuangKou(Connection con,String id, String name,String level){
this.setTitle("超市收银系统"+"+++++当前登陆:"+ id + " " + name+ " " + level);//设置标题栏
this.setSize(1024,768);
Toolkit tk=Toolkit.getDefaultToolkit();//得到当前屏幕的尺寸,高度和宽度
int x=(int)(tk.getScreenSize().getWidth()-this.getWidth())/2;
int y=(int)(tk.getScreenSize().getHeight()-this.getHeight())/2;//窗口居中,分别设置xy的值
this.setLocation(x,y);//把xy复制给位置信息
this.addWindowListener(new control.GuanBi());//model中的关闭方法
p1.add(l1);
p1.add(t1);
p1.add(bt1);
p1.add(bt4);
p1.add(bt5);
p1.add(bt6);
bt1.addActionListener(new custom());
p2.add(l2);
p2.add(t2);
p2.add(l3);
p2.add(t3);
p3.add(p1);
p3.add(p2);
this.add(p3,"North");//把p3放在上面,用layout布局
p4.add(l4);
Font f = new Font("楷体",1,100);//大字体让顾客能看到消费金额
l4.setFont(f);
p4.add(l5);
l5.setFont(f);
p4.add(bt3);
bt3.addActionListener(new mypayment());
this.add(p4, "South");//结账放在下面
p6.add(l6);
p6.add(t4);
p6.add(bt2);
bt2.addActionListener(new Cthing());//监视商品id
Vector<String> Head = new Vector<String>();//泛型机制,这样在Vector集合中存放元素的时候,将会采取安全检查,里面只可以放入String的对象
Head.add("商品ID");
Head.add("商品名");
Head.add("商品位置");
Head.add("商品单价");
Head.add("商品数量");
Head.add("商品总价");
//Head.add("商品剩余量");
jt = new JTable(allvec,Head);//在表格中放入数据
jt.setEnabled(false);//设置表哥的可用属性为F,就是老师上课讲的按钮为灰色的
jt.setPreferredScrollableViewportSize(new Dimension(0,120));//调整表哥的大小
jsp.setViewportView(jt);//把表哥放到容器框里
p5.setLayout(new BorderLayout());//用东南西北中的layout布局
p5.add(p6,"North");
p5.add(jsp,"Center");//表格放到容器框中,容器框放到中央
this.add(p5,"Center");
this.setVisible(true);//白色可见的!XX
}
/////////////////////////////////////////////////////////////////
class custom implements ActionListener{//类的自定义custom实现监视器
public void actionPerformed(ActionEvent e) {//监视器中定义的方法
try {
dURL = "jdbc:odbc:supermarket";
con = DriverManager.getConnection(dURL);
new customload(con,t1.getText()); //上传会员信息
} catch (SQLException e1) {//捕捉到异常并做响应的处理
System.out.println("数据库连接错误");
}
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////////
class customload{//顾客加载类
String sql;
public customload(Connection con, String t1){
try {
Statement stm = con.createStatement();//通过con数据库链接对象创建一个stm对象数据库操作对象
ResultSet rs = null;//查不到结果返回值为空
sql = "SELECT * FROM custinfo where id = '" + t1 + "'";//在数据库中找到帐号
try {
rs = stm.executeQuery(sql);//从数据库里读出的内容,返回一个结果集
rs.next();
t2.setText(rs.getString("name"));
t3.setText(rs.getString("phone"));//quchushujufangzaiwenbenkuangnei
con.close();
stm.close();//guanbishujukucaozuo
a = 1;
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "ID不存在!", null, JOptionPane.ERROR_MESSAGE);//课本P247页。。对话框弹出括号内是四项:(组件的父组件,对象消息,字符串标题,int消息类型(错误消息))
}
} catch (SQLException e) {}
}
}
/////////////////////////////////////////////////////////////////////////////////////////////////////
class Cthing implements ActionListener{//对商品id的监视器
public void actionPerformed(ActionEvent e) {
try {
dURL = "jdbc:odbc:supermarket";
con = DriverManager.getConnection(dURL);
thingload(con,t4.getText());//显示商品id
} catch (SQLException e1) {
System.out.println("数据库连接错误");
}
}
}
////////////////////////////////////////////////////////////////////////////////////////
void thingload(Connection con, String id){//夹在货物类!
String sql;
try {
Statement stm = con.createStatement();//通过con数据库链接对象创建一个stm对象数据库操作对象
ResultSet rs = null;//查不到结果返回值为空
sql = "SELECT * FROM messinfo where messid = '" + id + "'";
try {
rs = stm.executeQuery(sql);
rs.next();
Vector vec = new Vector();//泛型机制,这样在Vector集合中存放元素的时候,将会采取安全检查
vec.add(rs.getString("messid"));//商品ID
vec.add(rs.getString("messname"));//商品名
vec.add(rs.getString("messplace"));//商品位置
String price= rs.getString("messprice");//商品单价
vec.add(price);//★★★★★★★★五星级错误!!!!!!!!!!
vec.add("1");//加1
vec.add(price);//累加
Double pr = Double.parseDouble(price);//double价格
l5.setText(Double.parseDouble(l5.getText()) + pr + "");//显示价格
allvec.add(vec);//添加vec泛型机制
jt.updateUI();//刷新面板、、、是updateUI()的功能
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "ID不存在!", null, JOptionPane.ERROR_MESSAGE);//弹出一个错误小提示(错误消息)
}
} catch (SQLException e) {
}
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
class mypayment implements ActionListener{//付款类mypayment监视器
public void actionPerformed(ActionEvent e) {
if(a==1){//如果是会员
java.text.DecimalFormat df=new java.text.DecimalFormat("#.00"); //java 数字格式化处理(小数点 百分号等),这个是保留两位小数,,参考网页:http://ljm426.blog.163.com/blog/static/1200032201199111020577/
Double pr = Double.parseDouble(l5.getText())*0.9;//打九折。。.parseDouble作用是把字符串转换为Double
df.format(pr);//通过格式操作使任意类型的数据转换成一个字符串------>百度百科
JOptionPane.showMessageDialog(null, "您是会员,打折后商品总价为:" + pr +"元", "打折信息", JOptionPane.OK_OPTION);//会员提示-》
}else if (Double.parseDouble(l5.getText())>200){//大于二百元发放会员卡-》
JOptionPane.showMessageDialog(null, "您的消费额为"+Double.parseDouble(l5.getText())+"元\r\n超过200元,可以在前台办理会员卡", "友情提示", JOptionPane.OK_OPTION);//yes~~~
}
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
超市收银系统eclipse access.zip
共41个文件
class:18个
java:13个
log:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 82 浏览量
2024-04-29
17:21:11
上传
评论
收藏 223KB ZIP 举报
温馨提示
超市收银系统eclipse access.zip
资源推荐
资源详情
资源评论
收起资源包目录
超市收银系统eclipse access.zip (41个子文件)
超市收银系统eclipse access
supermarket
hs_err_pid5172.log 10KB
.classpath 301B
.settings
org.eclipse.jdt.core.prefs 629B
src
view
InsertRecord.java 2KB
ChuangKou.java 8KB
ModifyRecord.java 2KB
SaleManger.java 933B
DengLu.java 2KB
ShowRecord.java 2KB
workDengLuyi.java 3KB
newFrame.java 0B
model
JianCha.java 926B
connection.java 851B
control
JieZhang.java 308B
BianLiang.java 104B
GuanBi.java 386B
模拟超市收银系统STUSD.exe 179KB
bin
view
workDengLuyi.class 1KB
DengLu$workDengLu.class 1KB
DengLu.class 3KB
SaleManger.class 2KB
ChuangKou.class 6KB
ChuangKou$mypayment.class 2KB
ShowRecord.class 3KB
ChuangKou$custom.class 1KB
InsertRecord.class 3KB
ChuangKou$customload.class 2KB
ModifyRecord.class 3KB
DatabaseWin.class 3KB
ChuangKou$Cthing.class 1KB
model
connection.class 2KB
JianCha.class 2KB
control
GuanBi.class 589B
JieZhang.class 485B
BianLiang.class 373B
模拟超市收银系统STUSD.jar 47KB
123.exe4j 2KB
.project 387B
images
images.jpg 9KB
SuperMarket.mdb 480KB
hs_err_pid1872.log 12KB
1
共 41 条
- 1
资源评论
GZM888888
- 粉丝: 176
- 资源: 2943
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- postgresql-42.7.3.jar
- 2024-05-21 20-36-43.mkv
- 基于QT+C++的智能云监护仪项目,能够实时显示使用者心电、血氧、血压波形及其它各种参数+源码(毕业设计&课程设计&项目开发)
- 基于java开发的app接收硬件端传输的心音信号,具有显示心音波形,发出心音的功能+源码(毕业设计&课程设计&项目开发)
- Python 程序语言设计模式思路-行为型模式:职责链模式:将请求从一个处理者传递到下一个处理者
- 9241703124789646.16健身系统2.apk
- postgresql-16.3-1-windows-x64.exe
- Python 程序语言设计模式思路-结构型模式:装饰器讲解及利用Python装饰器模式实现高效日志记录和性能测试
- 基于YOLOv5和DeepSORT的多目标跟踪仿真与记录
- Python 程序语言设计模式思路-创建型模式:原型模式:通过复制现有对象来创建新对象,面向对象编程
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功