JAVA个人小程序GUI篇-收银(标签、按钮、复选框、下拉标、文本域、表格······)
如果用eclipse需先装载windowsbuild
//导入包
import java.awt.BorderLayout;
import java.awt.EventQueue; import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.JLabel;
import javax.swing.SwingConstants;
import java.awt.Font;
import javax.swing.JTextField;
import javax.swing.JTextArea;
import javax.swing.JComboBox;
import javax.swing.DefaultComboBoxModel;
import javax.swing.JCheckBox;
import javax.swing.JButton;
import java.awt.Color;
import java.awt.SystemColor;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import javax.swing.ImageIcon; public class CommondityChange extends JFrame {
/**
* 声明
*/
private JPanel contentPane;
private JTable table;
private JTextField textField;
private JTextField textField_1;
private JTextField textField_2;
float sumPrice;//应付金额 /**
* Launch the application.
*/
public static void main(String[] args) {
/**
* star threa
*/
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
CommondityChange frame = new CommondityChange();
frame.setVisible(true);//设置可见
} catch (Exception e) {
e.printStackTrace();
}
}
});
} /**
* Create the frame.
*/
public CommondityChange() { { }
setTitle("商品交易");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 1091, 544);
contentPane = new JPanel();
contentPane.setBackground(SystemColor.controlHighlight);
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null); table = new JTable();
table.setBackground(new Color(173, 216, 230));
table.setModel(new DefaultTableModel(
new Object[][] {//表格内容
{"\u7F16\u53F7", "\u7C7B\u578B", "\u5546\u54C1", "\u5355\u4EF7/\u5143", "库存"},
{"001", "\u7537\u88C5", "adidas\u5706\u9886polo\u886B", "298", "21"},
{"002", "\u7535\u5668", "\u683C\u529B\u7A7A\u8C03", "3888", "5"},
{"003", "\u7537\u978B", "Nice\u5E73\u5E95\u8FD0\u52A8\u978B\u900F\u6C14\u578B", "368", "19"},
{"004", "\u6237\u5916", "\u9ED1\u767D\u6237\u5916\u53CC\u80A9\u80CC\u5305", "259", "12"},
{"005", "\u5316\u5986", "chanel\u7537\u58EB\u9999\u6C34", "1988", "15"},
{"006", "\u6570\u7801", "\u534E\u7855FL5900", "3988", "9"},
},
new String[] {
"\u7F16\u53F7", "\u7C7B\u578B", "\u5546\u54C1", "\u5355\u4EF7/\u5143", "库存"
}
));
table.getColumnModel().getColumn(0).setPreferredWidth(95);
table.getColumnModel().getColumn(1).setPreferredWidth(95);
table.getColumnModel().getColumn(2).setPreferredWidth(95);
table.getColumnModel().getColumn(3).setPreferredWidth(95);
table.getColumnModel().getColumn(4).setPreferredWidth(95);
table.setBounds(10, 42, 812, 206);
contentPane.add(table);
table.setRowHeight(30);//设置单元格高度 JLabel label = new JLabel("应付");//标签
label.setFont(new Font("宋体", Font.BOLD, 14));//设置字体、大小、格式
label.setHorizontalAlignment(SwingConstants.CENTER);//文字居中
label.setBounds(858, 258, 60, 23);
contentPane.add(label); JLabel label_1 = new JLabel("实收");
label_1.setHorizontalAlignment(SwingConstants.CENTER);
label_1.setFont(new Font("宋体", Font.BOLD, 14));
label_1.setBounds(856, 301, 60, 23);
contentPane.add(label_1); JLabel label_2 = new JLabel("找零");
label_2.setHorizontalAlignment(SwingConstants.CENTER);
label_2.setFont(new Font("宋体", Font.BOLD, 14));
label_2.setBounds(858, 426, 60, 23);
contentPane.add(label_2); textField = new JTextField();//文本框
textField.setBounds(928, 259, 107, 23);
contentPane.add(textField);
textField.setColumns(10); textField_1 = new JTextField();
textField_1.setColumns(10);
textField_1.setBounds(928, 302, 107, 23);
contentPane.add(textField_1); textField_2 = new JTextField();
textField_2.setColumns(10);
textField_2.setBounds(928, 426, 107, 23);
contentPane.add(textField_2); JTextArea textArea = new JTextArea();//文本域
textArea.setBackground(SystemColor.text);
textArea.setBounds(10, 301, 802, 191);
contentPane.add(textArea); JComboBox comboBox_0 = new JComboBox();//下拉列表
comboBox_0.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));//下拉内容
comboBox_0.setMaximumRowCount(5);
comboBox_0.setBounds(934, 76, 32, 21); contentPane.add(comboBox_0); JLabel lblNewLabel = new JLabel("");
lblNewLabel.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));//导入图片,本地
lblNewLabel.setBounds(981, 79, 66, 15);
contentPane.add(lblNewLabel); JComboBox comboBox_1 = new JComboBox();
comboBox_1.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));
comboBox_1.setMaximumRowCount(5);
comboBox_1.setBounds(934, 107, 32, 21);
contentPane.add(comboBox_1); JComboBox comboBox_2 = new JComboBox();
comboBox_2.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));
comboBox_2.setMaximumRowCount(5);
comboBox_2.setBounds(934, 138, 32, 21);
contentPane.add(comboBox_2); JComboBox comboBox_3 = new JComboBox();
comboBox_3.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));
comboBox_3.setMaximumRowCount(5);
comboBox_3.setBounds(934, 169, 32, 21);
contentPane.add(comboBox_3);
//comboBox_3.getSelectedItem(); //获取当前选中内容 JComboBox comboBox_4 = new JComboBox();
comboBox_4.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));
comboBox_4.setMaximumRowCount(5);
comboBox_4.setBounds(934, 200, 32, 21);
contentPane.add(comboBox_4); JComboBox comboBox_5 = new JComboBox();
comboBox_5.setModel(new DefaultComboBoxModel(new String[] {"1", "2", "3", "4", "5"}));
comboBox_5.setMaximumRowCount(5);
comboBox_5.setBounds(934, 231, 32, 21);
contentPane.add(comboBox_5); JLabel label_3 = new JLabel("");
label_3.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));
label_3.setBounds(981, 110, 66, 15);
contentPane.add(label_3); JLabel label_4 = new JLabel("");
label_4.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));
label_4.setBounds(981, 141, 66, 15);
contentPane.add(label_4); JLabel label_5 = new JLabel("购买数量");
label_5.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));
label_5.setBounds(981, 172, 66, 15);
contentPane.add(label_5); JLabel label_6 = new JLabel("购买数量");
label_6.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));
label_6.setBounds(981, 203, 66, 15);
contentPane.add(label_6); JLabel label_7 = new JLabel("购买数量");
label_7.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hewolianxi.jpg"));
label_7.setBounds(981, 234, 66, 15);
contentPane.add(label_7); JCheckBox checkBox_1 = new JCheckBox("购买");//复选框
checkBox_1.setBounds(828, 75, 73, 23);
contentPane.add(checkBox_1); JCheckBox checkBox_2 = new JCheckBox("购买");
checkBox_2.setBounds(828, 106, 73, 23);
contentPane.add(checkBox_2);
// checkBox.isSelected(); 是否被选中 JCheckBox checkBox_3 = new JCheckBox("购买");
checkBox_3.setBounds(828, 137, 73, 23);
contentPane.add(checkBox_3); JCheckBox checkBox_4 = new JCheckBox("购买");
checkBox_4.setBounds(828, 168, 73, 23);
contentPane.add(checkBox_4); JCheckBox checkBox_5 = new JCheckBox("购买");
checkBox_5.setBounds(828, 199, 73, 23);
contentPane.add(checkBox_5); JCheckBox checkBox_6 = new JCheckBox("购买");
checkBox_6.setBounds(828, 230, 73, 23);
contentPane.add(checkBox_6); JButton btnNewButton = new JButton("结算");
btnNewButton.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\gwc_buy.gif"));
btnNewButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
float shiS = Float.valueOf(textField_1.getText());//实收金额
float zhL = shiS - sumPrice; //找零
textField_2.setText(zhL+"");//在textField_2中显示
}
});
btnNewButton.setForeground(Color.RED);
btnNewButton.setBackground(Color.PINK);
btnNewButton.setFont(new Font("微软雅黑", Font.BOLD, 16));
btnNewButton.setBounds(891, 352, 126, 40);
contentPane.add(btnNewButton); JButton button = new JButton("确认");
button.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\finalbutton.gif"));
button.addActionListener(new ActionListener() {//监听事件
public void actionPerformed(ActionEvent arg0) {
textArea.setText("");//初始化文本域内容为空
sumPrice = 0;
if(checkBox_1.isSelected()){//如果被选中
float pri = 298*Integer.valueOf(comboBox_0.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"adidas\u5706\u9886polo\u886B\t"+
comboBox_0.getSelectedItem()+"\n");//在textArea中显示
}
if(checkBox_2.isSelected()){//如果复选框被选中
float pri = 3888*Integer.valueOf(comboBox_1.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"\u683C\u529B\u7A7A\u8C03\t"+
comboBox_1.getSelectedItem()+"\n");//在textArea中显示
}
if(checkBox_3.isSelected()){//如果被选中
float pri = 368*Integer.valueOf(comboBox_2.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"Nice\u5E73\u5E95\u8FD0\u52A8\u978B\u900F\u6C14\u578B\t"+
comboBox_2.getSelectedItem()+"\n");//在textArea中显示
}
if(checkBox_4.isSelected()){//如果被选中
float pri = 259*Integer.valueOf(comboBox_3.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"\u9ED1\u767D\u6237\u5916\u53CC\u80A9\u80CC\u5305\t"+
comboBox_3.getSelectedItem()+"\n");//在textArea中显示
}
if(checkBox_5.isSelected()){//如果被选中
float pri = 1988*Integer.valueOf(comboBox_4.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"chanel\u7537\u58EB\u9999\u6C34\t"+
comboBox_4.getSelectedItem()+"\n");//在textArea中显示
}
if(checkBox_6.isSelected()){//如果被选中
float pri = 3988*Integer.valueOf(comboBox_5.getSelectedItem().toString());//单类价格
sumPrice +=pri; //累计价格
textArea.setText(textArea.getText()+
"\u534E\u7855FL5900\t"+
comboBox_5.getSelectedItem()+"\n");//在textArea中显示
}
textField.setText(sumPrice+"");//在textField中显示sumPrice
}
});
button.setBackground(new Color(255, 182, 193));
button.setBounds(891, 43, 126, 26);
contentPane.add(button); JLabel label_8 = new JLabel("选中的商品及数量");
label_8.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\car_step8.gif"));
label_8.setHorizontalAlignment(SwingConstants.CENTER);
label_8.setBounds(10, 279, 134, 23);
contentPane.add(label_8); JLabel label_9 = new JLabel("商品列表");
label_9.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\hottitle.gif"));
label_9.setBounds(10, 25, 126, 15);
contentPane.add(label_9); JLabel label_10 = new JLabel("");
label_10.setIcon(new ImageIcon("D:\\Desktop\\maji\\html\\img\\logo.gif"));
label_10.setBounds(473, 10, 95, 30);
contentPane.add(label_10);
}
}
运行效果:

JAVA个人小程序GUI篇-收银(标签、按钮、复选框、下拉标、文本域、表格······)的更多相关文章
- python面向过程编程小程序- 模拟超市收银系统
6.16自我总结 功能介绍 程序功能介绍: 商品信息再读取修改买卖均已xlsx格式 且生成购物记录也按/用户名/购买时间.xlsx格式生成 账号密码输入错误三次按照时间进行冻结 用户信息已json格式 ...
- Java通过复选框控件数组实现添加多个复选框控件
编写程序,通过复选框控件数组事先选择用户爱好信息的复选框,在该程序中,要求界面中的复选框数量可以根据指定复选框名称的字符串数组的长度来自动调节. 思路如下: 创建JPanel面板对象: 使用JPane ...
- 我的微信小程序第二篇
在上一篇<我的微信小程序第一篇(入门)>中,很多人问我什么是微信小程序,在这里我要说一下这个是我的失误啦,我默认大家都知道微信小程序,其实可能行内人士都知道小程序,好多非行内朋友可能平时不 ...
- java的小程序在html中的运行测试
java的小程序在html中的运行测试,打开vs2012,以网站模式打开,生成,调用iis临时服务器运行.
- 微信小程序入门篇
微信小程序入门篇: 准备工作 IDE搭建 就不多说了,没有内测码去下载个破解版吧,我用了一下,学习完全够了!IDE破解版+安装教程 图片发自简书App 知识准备 JavaScrip还是要看看的,推荐教 ...
- 前端微信小程序实战篇
电商底部导航栏的制作 我想大家对电商一定不陌生,一般电商的底部导航栏有以下几个首页.分类.购物车.个人中心. app.json是用来配置page路径以及导航栏属性的,那我们要做首页.分类.购物车.个人 ...
- 【微信小程序】转载:微信小程序实战篇-下拉刷新与加载更多
下拉刷新 实现下拉刷新目前能想到的有两种方式 1. 调用系统的API,系统有提供下拉刷新的API接口 当然,你可以直接在全局变量app.json的window里面配置上面这个属性,这样整个项目都允许下 ...
- 微信小程序实战篇:商品属性联动选择(案例)
本期的微信小程序实战篇来做一个电商网站经常用到的-商品属性联动选择的效果,素材参考了一点点奶茶. 效果演示: 商品属性联动.gif 代码示例 1.commodity.xml <!-- < ...
- 福利贴——爬取美女图片的Java爬虫小程序代码
自己做的一个Java爬虫小程序 废话不多说.先上图. 目录命名是用标签缩写,假设大家看得不顺眼能够等完成下载后手动改一下,比方像有强迫症的我一样... 这是挂了一个晚上下载的总大小,只是还有非常多由于 ...
随机推荐
- E - Let's Go Rolling!
题目描述:数轴上有nn个质点,第ii个质点的坐标为xixi,花费为cici,现在要选择其中一些点固定,代价为这些点的花费,固定的点不动,不固定的点会向左移动直至遇到固定的点,代价是这两点的距离,如果左 ...
- linux上udev的配置(转载)
udev配置文件主要的udev配置文件是/etc/udev/udev.conf.这个文件通常很短,他可能只是包含几行#开头的注释,然后有几行选项:udev_rules=”/etc/udev/rules ...
- Linux登录超时自动退出处理办法
出于安全方面的考虑,机器常要求配置一个登录时间期限,当闲置超过这一期限就自动退出:但在某些场合我们需要时不时地就使用机器,如果每次都要重新ssh登录那是非常麻烦的 方法一:让当前会话一直处于工作状态 ...
- Qt画笔实现曲线
效果图: void CurvePoint::paintEvent(QPaintEvent *event) { // 曲线上的点 static QList<QPointF> points = ...
- 使用JdbcTemplate操作数据库(二十九)
使用JdbcTemplate操作数据库 Spring的JdbcTemplate是自动配置的,你可以直接使用@Autowired来注入到你自己的bean中来使用. 举例:我们在创建User表,包含属性n ...
- mac nginx+php-fpm配置(安装过后nginx后访问php文件下载,访问php文件请求200显示空白页面)
访问php文件下载是因为没配置php-fpm 两个问题主要都是nginx.conf配置的问题: /usr/local/etc/nginx/nginx.conf server { listen 8 ...
- 2-MAVEN 基本命令
MVN的基本命令 mvn package:打包 >生成了target目录 >编译了代码 >使用junit测试并生成报告 >生成代码的jar文件 >运行jar包: java ...
- TCP_NODELAY算法使用事项
当有一个TCP数据段不足MSS,比如要发送700Byte数据,MSS为1460Byte的情况.nagle算法会延迟这个数据段的发送,等待,直到有足够的数据填充成一个完整数据段.也许有人会问,这有什么影 ...
- OOP⑶
/** * 学生类 * ctrl+o 查询本类的所有属性 和方法 */ public class Student { int age; // 年龄 String name; // 姓名 // 自己创建 ...
- jquery 操作table样式拖动参考
参考: http://blog.csdn.net/kdiller/article/details/6059727 http://www.jb51.net/article/59795.htm