/*----------------------------------------------------------------------------------*/ /* Program för att testa klassen ScoreCard. */ /* */ /* Det förutsätts att: */ /* */ /* ScoreCard har en konstruktor ScoreCard(PlayEngine engine) */ /* */ /* ScordCard har en metod writeValue(int[] dicePoints) som fyller i på */ /* resultatkortet vilken poäng tärningsuppsättningen i fältet dicePoints */ /* ger för var och en av de olika poängkategorierna */ /*----------------------------------------------------------------------------------*/ import javax.swing.*; import java.awt.*; import java.awt.event.*; import java.util.*; public class GraphicTestScore extends JFrame implements ActionListener { private Model model = new Model(); private ScoreCard card = new ScoreCard(model); private JTextField answer = new JTextField(20); private int[] dicePoints = new int[5]; public GraphicTestScore() { JLabel question = new JLabel("Ge tärningsvärden: ", JLabel.CENTER); JPanel south = new JPanel(new GridLayout(1,2)); south.add(question); south.add(answer); getContentPane().setLayout( new BorderLayout()); getContentPane().add("South", south); getContentPane().add("Center", card); answer.addActionListener(this); setDefaultCloseOperation(EXIT_ON_CLOSE); pack(); }//konstruktor public void actionPerformed(ActionEvent e) { String indata = answer.getText(); StringTokenizer ordSeparator = new StringTokenizer(indata, " ,\t"); if (ordSeparator.countTokens() == 5) { int index = 0; while(ordSeparator.hasMoreTokens() && index < 5) { String ettOrd = ordSeparator.nextToken(); dicePoints[index] = Integer.parseInt(ettOrd);; index = index + 1; } model.updateScore(dicePoints); //denna metod är implementerad i embryot till klassen Model card.writeValues(); //denna metod måste ni skriva i ScoreCard!!!! } else JOptionPane.showMessageDialog(null, "Du har angivt felaktigt antal värden!!!"); }//actionPerformed public static void main(String[] args) { GraphicTestScore test = new GraphicTestScore(); test.setVisible(true); }//main } //GraphicTestScore