javaswing实现购买(使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量)

:暂无数据 2026-07-18 08:20:02 :0

javaswing实现购买(使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量)

本篇文章给大家谈谈javaswing实现购买,以及使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录

使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量

用java Swing做的?给你个代码,还有运行结果图

package my.test.main;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.ComponentEvent;
import java.awt.event.ComponentListener;
import java.awt.event.KeyAdapter;
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.SwingUtilities;
import javax.swing.border.EmptyBorder;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
import javax.swing.event.CaretEvent;
import javax.swing.event.CaretListener;
import javax.swing.JLabel;
import javax.swing.JTextField;
public class Purchase extends JFrame {
private JPanel contentPane;
private JTextField textField;
private JTextField textField_1;
private JTextField textField_2;
private JTextField textField_3;
private JTextField textField_4;
private JLabel label_9;
/**
 * Launch the application.
 */
public static void main(String args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Purchase frame = new Purchase();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
 * Create the frame.
 */
public Purchase() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);
JLabel label = new JLabel("\u5546\u54C11");
label.setBounds(56, 40, 54, 15);
contentPane.add(label);
JLabel label_1 = new JLabel("\u5546\u54C12");
label_1.setBounds(56, 70, 54, 15);
contentPane.add(label_1);
JLabel label_2 = new JLabel("\u5546\u54C13");
label_2.setBounds(56, 100, 54, 15);
contentPane.add(label_2);
JLabel label_3 = new JLabel("\u5546\u54C14");
label_3.setBounds(56, 130, 54, 15);
contentPane.add(label_3);
JLabel label_4 = new JLabel("\u5546\u54C15");
label_4.setBounds(56, 160, 54, 15);
contentPane.add(label_4);
JLabel label_5 = new JLabel("\u5546\u54C1\u540D\u79F0");
label_5.setBounds(56, 7, 54, 15);
contentPane.add(label_5);
JLabel label_6 = new JLabel("单价");
label_6.setBounds(179, 7, 54, 15);
contentPane.add(label_6);
JLabel label_7 = new JLabel("数量");
label_7.setBounds(307, 7, 54, 15);
contentPane.add(label_7);
JLabel label_8 = new JLabel("总价");
label_8.setBounds(145, 224, 54, 15);
contentPane.add(label_8);
label_9 = new JLabel("0");
label_9.setBounds(209, 224, 54, 15);
contentPane.add(label_9);
JLabel label_10 = new JLabel("10");
label_10.setBounds(185, 40, 54, 15);
contentPane.add(label_10);
JLabel label_11 = new JLabel("20");
label_11.setBounds(185, 70, 54, 15);
contentPane.add(label_11);
JLabel label_12 = new JLabel("30");
label_12.setBounds(185, 100, 54, 15);
contentPane.add(label_12);
JLabel label_13 = new JLabel("40");
label_13.setBounds(185, 130, 54, 15);
contentPane.add(label_13);
JLabel label_14 = new JLabel("50");
label_14.setBounds(185, 160, 54, 15);
contentPane.add(label_14);
textField = new JTextField();
textField.setBounds(295, 37, 66, 21);
contentPane.add(textField);
textField.setColumns(10);
textField.addKeyListener(new CalcTotle());
textField_1 = new JTextField();
textField_1.setColumns(10);
textField_1.setBounds(295, 67, 66, 21);
contentPane.add(textField_1);
textField_1.addKeyListener(new CalcTotle());
textField_2 = new JTextField();
textField_2.setColumns(10);
textField_2.setBounds(295, 97, 66, 21);
contentPane.add(textField_2);
textField_2.addKeyListener(new CalcTotle());
textField_3 = new JTextField();
textField_3.setColumns(10);
textField_3.setBounds(295, 127, 66, 21);
contentPane.add(textField_3);
textField_3.addKeyListener(new CalcTotle());
textField_4 = new JTextField();
textField_4.setColumns(10);
textField_4.setBounds(295, 157, 66, 21);
contentPane.add(textField_4);
textField_4.addKeyListener(new CalcTotle());
}
class CalcTotle extends KeyAdapter {
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
int count1, count2, count3, count4, count5;
if (!textField.getText().isEmpty()) {
count1 = Integer.parseInt(textField.getText()) * 10;
} else {
count1 = 0;
}
if (!textField_1.getText().isEmpty()) {
count2 = Integer.parseInt(textField_1.getText()) * 20;
} else {
count2 = 0;
}
if (!textField_2.getText().isEmpty()) {
count3 = Integer.parseInt(textField_2.getText()) * 30;
} else {
count3 = 0;
}
if (!textField_3.getText().isEmpty()) {
count4 = Integer.parseInt(textField_3.getText()) * 40;
} else {
count4 = 0;
}
if (!textField_4.getText().isEmpty()) {
count5 = Integer.parseInt(textField_4.getText()) * 50;
} else {
count5 = 0;
}
final int totle = count1 + count2 + count3 + count4 + count5;
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
label_9.setText(totle + "");
}
});
}
}
}

java的swing问题

这个里边有个属性,不知道你用的什么编程工具,你可以在JBuilder做个,后边那个属性框里有个什么属性来着,我忘了,你看看,一看就能找到的,把那个属性选上以后,那些按钮可以随便拖动,随便放哪都行!

求java swing

import java.awt.*;
public class L {
public static void main(String args) {
new W();
}
}
class W extends Frame {
GridLayout g;// 采用此类布局就能包只能够每个组件固定大小,且不因放大而改变
Label;
TextField;
Button b;
W() {
g = new GridLayout(4, 2, 3, 3);// 布局保证放大后图框中的组件也放大
setLayout(g);
b = new Button("确定");
for (int i = 0; i 《 3; i++) {
l = new Label(i + "");
l.setBackground(Color.cyan);
t = new TextField();
}
add(l);
add(t);
add(l);
add(t);
add(l);
add(t);
add(b);//如果想把按钮变到右边,不妨再添加一个空label在现在b的位置
setBounds(10, 10, 200, 200);
setVisible(true);
validate();
}
}
有什么问题,直接hi我就行,我在线

java swing 中的FileDialog

import java.io.File;
/**
*
* @author Administrator
*/
public class EBBFileFilter extends javax.swing.filechooser.FileFilter {
private String Filter_Type;
public EBBFileFilter(String Filter_Type){
this.Filter_Type = Filter_Type;
}
public boolean accept(File f) {
if(Filter_Type.equals("FileFilter_NB")){
if (f.isDirectory()|| f.getPath().toLowerCase().endsWith(".nb")) {
return true;
}else{
return false;
}
}
if(Filter_Type.equals("FileFilter_YB")){
if (f.isDirectory()|| f.getPath().toLowerCase().endsWith(".yb")) {
return true;
}else{
return false;
}
}
if(Filter_Type.equals("FileFilter_RB")){
if (f.isDirectory()|| f.getPath().toLowerCase().endsWith(".rb")) {
return true;
}else{
return false;
}
}
if(Filter_Type.equals("FileFilter_ETF")){
if (f.isDirectory()|| f.getPath().toLowerCase().endsWith(".etf")) {
return true;
}else{
return false;
}
}else{
return true;
}

}
public String getDescription(){
if(Filter_Type.equals("FileFilter_NB")){
return "年报";
}
if(Filter_Type.equals("FileFilter_YB")){
return "月报";
}
if(Filter_Type.equals("FileFilter_RB")){
return "日报";
}
if(Filter_Type.equals("FileFilter_ETF")){
return "模板文件";
}
return null;
}
}
/////////---
//打开报表文件
private void open_BB() {
javax.swing.JFileChooser cf = new javax.swing.JFileChooser() {
public void approveSelection() {
super.approveSelection();
File file = this.getSelectedFile();
open_BB_Data(file);
}
};
cf.setDialogTitle("选择文件");
cf.setCurrentDirectory(new java.io.File("file"));
cf.setMaximumSize(new java.awt.Dimension(425, 245));
cf.addChoosableFileFilter(new EBBFileFilter("FileFilter_NB"));
cf.addChoosableFileFilter(new EBBFileFilter("FileFilter_YB"));
cf.addChoosableFileFilter(new EBBFileFilter("FileFilter_RB"));
cf.setAcceptAllFileFilterUsed(true);
cf.showOpenDialog(this);
}

Javaswing选项卡

参考代码

import javax.swing.*;
import java.awt.*;
public class DemoFrame extends JFrame {
private JTabbedPane tpp;
public DemoFrame() {
tpp = new JTabbedPane(JTabbedPane.LEFT); //指定JTabbedPane靠左
JPanel jp1 = new JPanel();
jp1.setBackground(Color.YELLOW);
tpp.add("TabLevel # 1", jp1);
JPanel jp2 = new JPanel();
jp2.setBackground(Color.RED);
tpp.add("TabLevel # 2", jp2);
add(tpp);
setTitle("JTabbedPane Nested Demonstration");
setSize(new Dimension(600, 500));
setLocationRelativeTo(null);
setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public static void main(String args) {
DemoFrame main = new DemoFrame();
main.setVisible(true);
}
}

拓展和思考: 

  • 关于修改选项卡之间的距离,增加特效等, 在java swing里 其实自定义组件的外观,一般是继承BasicXxxUI 来实现 .  

  • 如果想要实现一些特殊的效果, 也可以自己使用按钮, 标签,面板 等 自己模拟一个 选项卡 .

例如 下面的组件, 就是自己做的一个选项卡的效果, 使用按钮来实现, 当鼠标移动到按钮上时, 按钮变黄. 移开时恢复按钮的初始外观. 当按钮被点击时, 按钮变成白色.  始终只能有一个按钮处于被选中状态. 根据选中按钮的不同, 来展示不同的面板.

又比如下面的选项卡, 是 JPanel 里放入图片和文字 来进行模仿的

用javaswing实现网店一键搬家功能

API中的内容:
从类 javax.swing.AbstractButton 继承的方法
doClick
public void doClick()
以编程方式执行“单击”。此方法的效果等同于用户按下并随后释放按钮。
doClick
public void doClick(int pressTime)
以编程方式执行“单击”。此方法的效果等同于用户按下并随后释放按钮。按钮在虚拟“按下”状态下停留 pressTime 毫秒的时间。
参数:
pressTime - “按下”按钮的时间,以毫秒为单位

文章分享结束,javaswing实现购买和使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量的答案你都知道了吗?欢迎再次光临本站哦!

javaswing实现购买(使用JAVA 编写一个程序,显示5中商品价格,用户可以选择多种商品并在其后的文本框输入购买的数量)

本文编辑:admin

本文相关文章:


哈夫曼树的构造matlab(编写一个程序,构造一棵哈夫曼树)

哈夫曼树的构造matlab(编写一个程序,构造一棵哈夫曼树)

各位老铁们好,相信很多人对哈夫曼树的构造matlab都不是特别的了解,因此呢,今天就来为大家分享下关于哈夫曼树的构造matlab以及编写一个程序,构造一棵哈夫曼树的问题知识,还望可以帮助大家,解决大家的一些困惑,下面一起来看看吧!

2026年9月26日 21:00

怎么看代码是什么语言编写的(怎么看出一个程序是什么语言编写的)

怎么看代码是什么语言编写的(怎么看出一个程序是什么语言编写的)

本篇文章给大家谈谈怎么看代码是什么语言编写的,以及怎么看出一个程序是什么语言编写的对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

2026年9月7日 06:00

c 向上取整函数(有关C程序设计,编写代码向上(向下)取整)

c 向上取整函数(有关C程序设计,编写代码向上(向下)取整)

大家好,关于c 向上取整函数很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于有关C程序设计,编写代码向上(向下)取整的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望关注下本站哦,希望对各位有所帮

2026年7月5日 17:50

更多文章:


withdrawal(withdrawal是什么意思)

withdrawal(withdrawal是什么意思)

今天给各位分享withdrawal是什么意思的知识,其中也会对withdrawal是什么意思进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

2026年10月11日 07:00

根据流程图怎么编写程序(用c语言根据流程图写程序)

根据流程图怎么编写程序(用c语言根据流程图写程序)

大家好,今天小编来为大家解答以下的问题,关于根据流程图怎么编写程序,用c语言根据流程图写程序这个很多人还不知道,现在让我们一起来看看吧!

2026年10月11日 06:00

在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)

在from子句中可以出现(如何在from 子句中嵌套查询下面的语句在access中出错!)

大家好,关于在from子句中可以出现很多朋友都还不太明白,不过没关系,因为今天小编就来为大家分享关于如何在from 子句中嵌套查询下面的语句在access中出错!的知识点,相信应该可以解决大家的一些困惑和问题,如果碰巧可以解决您的问题,还望

2026年10月11日 05:20

countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)

countif函数统计个数怎么用(countif函数怎么用 详解Excel中countif函数的使用方法)

其实countif函数统计个数怎么用的问题并不复杂,但是又很多的朋友都不太了解countif函数怎么用 详解Excel中countif函数的使用方法,因此呢,今天小编就来为大家分享countif函数统计个数怎么用的一些知识,希望可以帮助到大

2026年10月11日 03:30

正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)

正则匹配数字之前的字符(正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式)

本篇文章给大家谈谈正则匹配数字之前的字符,以及正则表达式如何匹配前面是数字、中间是“/”、后面也是数字,就像2/3专业的模式对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问

2026年10月11日 03:00

register语言学(register语言学)

register语言学(register语言学)

“register语言学”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看register语言学(register语言学)!

2026年10月11日 01:40

系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)

系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)

“系统架构设计师可以直接考吗”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看系统架构设计师可以直接考吗(学生可以报名系统架构设计师吗)!

2026年10月11日 01:00

orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)

orlnsertbootmediinselected(我电脑开机显示这个是什么意思or insert boot media in select)

大家好,如果您还对orlnsertbootmediinselected不太了解,没有关系,今天就由本站为大家分享orlnsertbootmediinselected的知识,包括我电脑开机显示这个是什么意思or insert boot med

2026年10月10日 23:00

display的用法(display是什么意思 详解display的含义和用法)

display的用法(display是什么意思 详解display的含义和用法)

大家好,如果您还对display的用法不太了解,没有关系,今天就由本站为大家分享display的用法的知识,包括display是什么意思 详解display的含义和用法的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!

2026年10月10日 22:00

html全部居中代码(怎么让网页居中显示,html如何让网页居中)

html全部居中代码(怎么让网页居中显示,html如何让网页居中)

大家好,今天小编来为大家解答以下的问题,关于html全部居中代码,怎么让网页居中显示,html如何让网页居中这个很多人还不知道,现在让我们一起来看看吧!

2026年10月10日 21:10

最近更新

戴尔vostro3500评测(戴尔:Vostro15 3500与Ins15 3511区别)
2026-10-11 09:10:02 浏览:0
西数5000aakx(西数WD-5000AAKX-001CAO和西数800AAJS-00WAAO哪个做安装系统盘比较好)
2026-10-11 08:30:05 浏览:0
热门文章

标签列表