求大神,做个java界面程序,题目如6-34所示

 我来答
张先森5719
2016-06-01
知道答主
回答量:21
采纳率:100%
帮助的人:8.7万
展开全部
import java.awt.Container;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class app implements ActionListener{
/**
* @param args
*/
static JFrame jf=new JFrame();
static JLabel l1=new JLabel("输入第1名学生的成绩:");
static JLabel l2=new JLabel("请输入成绩后按回车键!");
static JButton b2=new JButton(" 确 定 ");
static JButton b3=new JButton("设置为默认值");
static JTextField t1=new JTextField();
static JTextArea t2=new JTextArea();
static JDialog d1=new JDialog(jf,true);
static JLabel l[]=new JLabel[5];
static JTextField t[]=new JTextField[5];
static int score[]=new int[4];
static int x=1;
static int n[]=new int[5];
public static void main(String[] args) {
// TODO Auto-generated method stub
Container c=jf.getContentPane();
jf.setSize(228, 255);
jf.setLocationRelativeTo(null);
jf.setDefaultCloseOperation(jf.EXIT_ON_CLOSE);
c.setLayout(null);
l1.setBounds(5, 10, 150, 25);
l2.setBounds(5, 35, 200, 30);
t1.setBounds(155, 10, 50, 25);
l1.setFont(new Font("",Font.BOLD,13));
l2.setFont(new Font("",Font.BOLD,17));
t2.setFont(new Font("",Font.BOLD,18));
t2.setEditable(false);
t2.setBounds(5, 75, 200, 135);
d1.setLocation(835, 405);
d1.setLayout(null);
d1.setSize(250, 240);
String ss[]={"请输入------------及格分数:","中等Max分数(大于及格分数):","良好Max分数(大于中等分数):","优秀Max分数(大于良好分数):",};
for(int i=0;i<4;i++)
{
l[i]=new JLabel(ss[i]);
t[i]=new JTextField("");
l[i].setBounds(5, i*30, 180, 30);
t[i].setBounds(180, i*30, 50, 25);
d1.add(l[i]);
d1.add(t[i]);
}
b2.setBounds(65, 120, 100, 30);
b3.setBounds(55, 160, 120, 30);
d1.add(b2);
d1.add(b3);
c.add(l1);
c.add(t1);
c.add(t2);
c.add(l2);
b2.addActionListener(new MyButtonAction());
b3.addActionListener(new MyButtonAction());
t1.addActionListener(new MyTextField());
jf.setVisible(true);
d1.setVisible(true);
}
static class MyButtonAction implements ActionListener{
public void actionPerformed(ActionEvent e) {
JButton bt=(JButton)e.getSource();
if(bt==b2){
for(int i=0;i<4;i++)score[i]=Integer.parseInt(t[i].getText());
d1.dispose();
}
if(bt==b3){
score[0]=60;
for(int i=1;i<4;i++)score[i]=score[i-1]+10;
d1.dispose();
}
if(bt==b2 || bt==b3)
{
t2.setText("分数<"+String.valueOf(score[0])+"不及格.\n"+
"分数>"+String.valueOf(score[0])+"及格.\n" +
String.valueOf(score[0])+">=分数<"+String.valueOf(score[1])+"中等.\n" +
String.valueOf(score[1])+">=分数<"+String.valueOf(score[2])+"良好.\n" +
String.valueOf(score[2])+">=分数<"+String.valueOf(score[3])+"优秀.");
}
}
}
static class MyTextField implements ActionListener{
public void actionPerformed(ActionEvent e) {
int i=0;
char ch[]=t1.getText().toCharArray();
int a=Integer.parseInt(t1.getText());
if(a<score[0]){n[0]++;l2.setText("第"+String.valueOf(x)+"名学生不及格!");}
else if(a>=score[0] && a<score[1] ){n[1]++;l2.setText("第"+String.valueOf(x)+"名学生及格!");}
else if(a>=score[1] && a<score[2] ){n[2]++;l2.setText("第"+String.valueOf(x)+"名学生中等!");}
else if(a>=score[2] && a<score[3] ){n[3]++;l2.setText("第"+String.valueOf(x)+"名学生良好!");}
else {n[4]++;l2.setText("第"+String.valueOf(x)+"名学生优秀!");}
x++;
l1.setText("输入第"+String.valueOf(x)+"名学生的成绩:");
String ss[]={"人不及格.","人及格.","人中等.","人良好.","人优秀.",};
String s="";
for(i=0;i<n.length;i++)
{
if(n[i]!=0)
{
s=s+String.valueOf(n[i])+ss[i]+"\n";
}
}
t2.setText(s);
t1.setText("");
}

}

public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub

}

}
这可以吧?
追问
可以,虽然我刚刚最好了,但还是感谢
束稠来3m
2016-06-01 · TA获得超过239个赞
知道小有建树答主
回答量:204
采纳率:0%
帮助的人:115万
展开全部
是用java swing做的吗,还是直接在控制台输出,控制台输出很简单的,swing我没有工具的
追问
是用swing做的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
vision_Yiu
2016-06-01 · TA获得超过349个赞
知道小有建树答主
回答量:251
采纳率:100%
帮助的人:70.8万
展开全部
治好我多年的颈椎病
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式