Stap 3: Het programma
En hier is mijn programma (drumroll...),
importeren van java.awt.*;
import java.util.*;
importeren van java.util.Random;
importeren van javax.swing.*;
openbare klasse GUI_RPS
{
Dit zijn de lidvariabelen. Ze zijn verkrijgbaar met een exemplaar van een klasse.
JFrame RPS;
JButton Rock, Paper, Scissors;
JTextField HRPS;
JTextField CRPS;
JTextField resultaten;
JTextField teller;
JPanel hInput;
char hChoice = ' ';
char cverkieslijk = ' ';
char [] cc = {'R', 'P', de '};
int r3;
int stropdas = 0;
int computerwins = 0;
int humanwins = 0;
Willekeurige rGen = nieuwe Random();
Dit is een constructor. Het wordt aangeroepen wanneer nieuwe GUI_RPS() wordt aangeroepen vanuit de belangrijkste.
openbare GUI_RPS()
{
RPS = nieuwe JFrame ("Rock, Paper, Scissors");
RPS.setSize (600, 600);
Rock = nieuwe JButton("Rock");
Papier = nieuwe JButton("Paper");
Schaar = nieuwe JButton("Scissors");
hInput = nieuwe JPanel();
HRPS = nieuwe JTextField(20);
CRPS = nieuwe JTextField(20);
Resultaten = nieuwe JTextField(20);
Counter = nieuwe JTextField(30);
Rock.addActionListener (nieuwe ActionListener()
{
openbare nietige actionPerformed (date e)
{
HRPS.setText ("je hebt gekozen Rock");
hChoice = 'R';
Play();
}
});
Paper.addActionListener (nieuwe ActionListener()
{
openbare nietige actionPerformed (date e)
{
HRPS.setText ("je hebt gekozen papier");
hChoice = 'P';
Play();
}
});
Scissors.addActionListener (nieuwe ActionListener()
{
openbare nietige actionPerformed (date e)
{
HRPS.setText ("je hebt gekozen schaar");
hChoice = de ';
Play();
}
});
hInput.setLayout (nieuwe FlowLayout());
hInput.add(HRPS);
hInput.add(CRPS);
hInput.add(Counter);
hInput.add(Rock);
hInput.add(Paper);
hInput.add(Scissors);
RPS.getContentPane () .add (hInput, BorderLayout.CENTER);
RPS.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
RPS.pack();
RPS.setVisible(true);
}
Toegevoegde methode
private void play()
{
R3 = rGen.nextInt(3);
cverkieslijk = cc [r3];
schakelaar (cverkieslijk)
{
Case 'R':
CRPS.setText ("Computer koos Rock");
breken;
letter 'P':
CRPS.setText ("Computer hebt gekozen papier");
breken;
geval van ':
CRPS.setText ("Computer koos Scisssors");
breken;
}
if(hChoice == cChoice)
{
stropdas ++;
}
Als (hChoice == 'R' & & cverkieslijk == de ')
{
humanwins ++;
}
Als (hChoice == 'P' & & cverkieslijk == 'R')
{
humanwins ++;
}
Als (hChoice == is ' & & cverkieslijk == 'P')
{
humanwins ++;
}
Als (cverkieslijk == 'R' & & hChoice == de ')
{
computerwins ++;
}
Als (cverkieslijk == 'P' & & hChoice == 'R')
{
computerwins ++;
}
Als (cverkieslijk == de ' & & hChoice == 'P')
{
computerwins ++;
}
Counter.setText ("banden =" + binden + ", menselijke wint =" + humanwins + ", Computer wint =" + computerwins);
}
openbare statische nietige leiding (koord [] args)
{
Ingesteld dat de look en feel Java Swing
Probeer
{
UIManager.setLookAndFeel)
UIManager.getCrossPlatformLookAndFeelClassName());
} catch (Exception e) {}
GUI_RPS aanvraag = nieuwe GUI_RPS();
}
}