第4次作业类测试代码+105032014126+黄晟

1类图:

2.界面和相应的功能:

主要代码:

public class Main extends JFrame {

private JPanel contentPane;
private JTextField ej_num;
private JTextField sjk_num;
private JTextField sjtm_num;
private JTextField sum;
private JTextField max;
private JTextField cut;

/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
Main frame = new Main();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}

static int tu(String a)
{
int back;
char a_c[]=a.toCharArray();
int len=a.length();

for(int i=0;i<=len-1;i++)
{
if( a_c[i]>'9' || a_c[i]<'0')
{
back=-1;
return back;
}
}

back=Integer.parseInt(a);
return back;
}

public static double commission(int headphone,int shell,int protector)
{
double back = 0;
float sum = 0;
sum=headphone*80+shell*10+protector*8;
if(sum<1000)
{
back=sum*0.1; //小于1000时所抽取的佣金
}
else if(sum>=1000 && sum<=1800)
{
back=100+(sum-1000)*0.15;//计算1000--1800的佣金
}
else if(sum>=1800)
{
back=220+(sum-1800)*0.2;//1800以上的佣金
}

return back;
}

public static int headphone_sum(int a)
{
return a*80;
}

public static int shell_sum(int a)
{
return a*10;
}

public static int protector_sum(int a)
{
return a*8;
}

public static int max_min(int a,int b,int c)
{
int max=a;
int min=a;
if(max<b)
{
max=b;
}
if(max<c)
{
max=c;
}
if(min>b)
{
min=b;
}
if(min>c)
{
min=c;
}
return max-min;
}

public static String high(int a,int b,int c)
{
String high_s="耳机";
int max=headphone_sum(a);
if(max<shell_sum(b))
{
max=shell_sum(b);
high_s="手机壳";
}
if(max<protector_sum(c))
{
max=protector_sum(c);
high_s="手机贴膜";
}
return high_s;
}

/**
* Create the frame.
*/
public Main() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 504, 347);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
contentPane.setLayout(null);

JLabel label = new JLabel("\u8BF7\u8F93\u5165\u914D\u4EF6\u7684\u9500\u552E\u91CF\uFF1A");
label.setBounds(10, 10, 138, 23);
contentPane.add(label);

JLabel label_1 = new JLabel("\u8033\u673A\uFF1A");
label_1.setBounds(20, 43, 54, 15);
contentPane.add(label_1);

ej_num = new JTextField();
ej_num.setBounds(57, 40, 66, 21);
contentPane.add(ej_num);
ej_num.setColumns(10);

JLabel label_2 = new JLabel("\u624B\u673A\u58F3\uFF1A");
label_2.setBounds(144, 43, 54, 15);
contentPane.add(label_2);

sjk_num = new JTextField();
sjk_num.setBounds(208, 40, 66, 21);
contentPane.add(sjk_num);
sjk_num.setColumns(10);

JLabel label_3 = new JLabel("\u624B\u673A\u8D34\u819C\uFF1A");
label_3.setBounds(293, 43, 66, 15);
contentPane.add(label_3);

sjtm_num = new JTextField();
sjtm_num.setBounds(369, 40, 66, 21);
contentPane.add(sjtm_num);
sjtm_num.setColumns(10);

JButton btnOk = new JButton("ok");
btnOk.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
String ej=ej_num.getText();
String sjk=sjk_num.getText();
String sjtm=sjtm_num.getText();
if( tu(ej)==-1 || tu(sjk)==-1 || tu(sjtm)==-1)
{
JOptionPane.showMessageDialog(null, "输入的数据必须是整数!", "标题",JOptionPane.WARNING_MESSAGE);
ej_num.setText("");
sjk_num.setText("");
sjtm_num.setText("");
sum.setText("");
max.setText("");
cut.setText("");
}
else
{
int ej_i=tu(ej);
int sjk_i=tu(sjk);
int sjtm_i=tu(sjtm);
sum.setText(Double.toString(commission(ej_i,sjk_i,sjtm_i)));
cut.setText(Integer.toString(max_min(ej_i,sjk_i,sjtm_i)));
max.setText(high(ej_i,sjk_i,sjtm_i));
}
}
});

btnOk.setBounds(99, 82, 93, 23);
contentPane.add(btnOk);

JButton btncancel = new JButton("cancel");
btncancel.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ej_num.setText("");
sjk_num.setText("");
sjtm_num.setText("");
sum.setText("");
max.setText("");
cut.setText("");
}
});
btncancel.setBounds(266, 82, 93, 23);
contentPane.add(btncancel);

JLabel label_4 = new JLabel("\u5E94\u8FD4\u8FD8\u7684\u4F63\u91D1\uFF1A");
label_4.setBounds(20, 129, 93, 15);
contentPane.add(label_4);

JLabel label_5 = new JLabel("\u9500\u552E\u989D\u6700\u9AD8\u7684\u914D\u4EF6\uFF1A");
label_5.setBounds(20, 171, 146, 15);
contentPane.add(label_5);

JLabel label_6 = new JLabel("\u9500\u552E\u914D\u4EF6\u6570\u91CF\u6700\u591A\u548C\u6700\u5C11\u4E4B\u5DEE\uFF1A");
label_6.setBounds(20, 218, 202, 15);
contentPane.add(label_6);

sum = new JTextField();
sum.setEnabled(false);
sum.setBounds(126, 126, 66, 21);
contentPane.add(sum);
sum.setColumns(10);

max = new JTextField();
max.setEnabled(false);
max.setBounds(176, 168, 66, 21);
contentPane.add(max);
max.setColumns(10);

cut = new JTextField();
cut.setEnabled(false);
cut.setBounds(265, 215, 66, 21);
contentPane.add(cut);
cut.setColumns(10);
}
}

界面:

 

转载于:https://www.cnblogs.com/HSing1225/p/6798620.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值