【发布时间】:2017-02-24 16:48:27
【问题描述】:
我需要从用户那里获取输入,说明每个人的姓名和成绩,将具有相应成绩的人名保存到数组中,以便以后可以按姓名或成绩进行搜索。 这是我到目前为止得到的结果
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;
import java.util.*;
public class Grades extends JFrame
{
String names;
int results, count;
int a;
//declare Buttons
private JTextField t1, name, grades;
private JLabel lbl1, namelbl, gradelbl;
//constructor
public Grades()
{
super("Grades");
Container c = getContentPane();
c.setLayout(new FlowLayout());
lbl1 = new JLabel("Please enter a number of results");
c. add(lbl1);
t1 = new JTextField (2);
c. add(t1);
namelbl = new JLabel("Please enter student's name");
c. add(namelbl);
name = new JTextField (10);
c. add(name);
gradelbl = new JLabel("Please enter student's grade");
c. add(gradelbl);
grades = new JTextField (10);
c. add(grades);
//create an instance of inner class ButtonHandler
//to use for button event handling
ButtonHandler handler = new ButtonHandler();
t1.addActionListener(handler);
name.addActionListener(handler);
grades.addActionListener(handler);
setSize(400, 400);
setVisible(true);
}
public static void main (String args [])
{
Grades app = new Grades();
app.addWindowListener(
new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
}
//inner class for button event handling
private class ButtonHandler implements ActionListener
{
public void actionPerformed (ActionEvent e)
{
Container c = getContentPane();
if(e.getSource() == t1)
{
a = Integer.parseInt(t1.getText());
if (a < 2 || a > 25)
{
JOptionPane.showMessageDialog(null, "You entered wrong value. Please re- enter");
t1.requestFocusInWindow();
t1.setText("");
a = Integer.parseInt(t1.getText());
}
name.requestFocusInWindow();
}
if(e.getSource() == name)
{
names = name.getText();
grades.requestFocusInWindow();
grades.setText("");
}
if(e.getSource() == grades)
{
results = Integer.parseInt(grades.getText());
if(results < 0 || results > 100)
{
JOptionPane.showMessageDialog(null, "You entered wrong value. Please re- enter");
grades.requestFocusInWindow();
grades.setText("");
a = Integer.parseInt(t1.getText());
}
else
{
name.requestFocusInWindow();
name.setText("");
System.out.println(names + " " + results);
}
}
}
}
}
【问题讨论】:
-
我的问题似乎很好。我:解释了我的项目的背景包括我想要完成的详细列表显示了我已经尝试过的/我到目前为止的工作我的问题很清楚,我需要帮助来完成任务。