rendered paste bodyimport java.awt.*;import javax.swing.*;import java.util.*;/** * * @author billyg */public class MultipleChoiceTest extends javax.swing.JFrame {protected int AA;protected String ekfwnisi;protected String apantisi1;protected String apantisi2;protected String apantisi3;protected String apantisi4;protected String swsti_apantisi;protected String ap1;protected String ap2;protected String ap3;protected String ap4;protected String sapantisi;protected String swstiapantisi;protected static ArrayList studentwronganswers = new ArrayList();protected static ArrayList studentscorrectanswers = new ArrayList();protected ArrayList listofdialogs = MultipleChoiceTestChoose.thisarray;protected static ArrayList listofanwseredquestions = new ArrayList();protected static ArrayList studentanswers = new ArrayList();protected int counter=0;protected String ek;protected String sapa;protected String apantisi;protected int AA1=EnglishTest.all;protected int choose;protected int help=0;protected int DAA=-1;protected int left=EnglishTest.left;protected int next=EnglishTest.next;protected String Year=EnglishTest.Year;protected ArrayList temp = new ArrayList(); /** Creates new form Y1 */protected void randomize(){ Iterator it1 = listofdialogs.iterator(); Iterator it2 = listofanwseredquestions.iterator(); if (it1.hasNext()){ choose = pickNumber(left); DialogsMPC dialos = (DialogsMPC)(it1.next()); dialos=(DialogsMPC)listofdialogs.get(choose); Y1ekfwnisi.setText(dialos.ekfwnisi); ek=dialos.ekfwnisi; temp.add(dialos.apantisi1); temp.add(dialos.apantisi2); temp.add(dialos.apantisi3); temp.add(dialos.apantisi4); int left2=temp.size(); int choose2= pickNumber(left2); String apantisi1=(String)temp.get(choose2); Y1apantisi1.setText(apantisi1); ap1=apantisi1; temp.remove(choose2); left2=temp.size(); choose2= pickNumber(left2); String apantisi2=(String)temp.get(choose2); Y1apantisi2.setText(apantisi2); ap1=apantisi2; temp.remove(choose2); left2=temp.size(); choose2= pickNumber(left2); String apantisi3=(String)temp.get(choose2); Y1apantisi3.setText(apantisi3); ap3=apantisi3; temp.remove(choose2); left2=temp.size(); choose2= pickNumber(left2); String apantisi4=(String)temp.get(choose2); Y1apantisi4.setText(apantisi4); ap4=apantisi4; temp.remove(choose2); sapa=dialos.swsti_apantisi; AA=dialos.AA; listofanwseredquestions.add(dialos); listofdialogs.remove(dialos);}} public MultipleChoiceTest() { initComponents(); randomize(); Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); Dimension frameSize = getSize(); setLocation(new Point((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.width) / 2)); setTitle("English Test "+Year+" "+next+"/"+EnglishTest.all+" - Protoporeia"); pack(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ private void initComponents() { java.awt.GridBagConstraints gridBagConstraints; buttonGroup1 = new javax.swing.ButtonGroup(); jLabel1 = new javax.swing.JLabel(); jPanel1 = new javax.swing.JPanel(); epomeno = new javax.swing.JButton(); Y1ekfwnisi = new javax.swing.JLabel(); Y1apantisi2 = new javax.swing.JRadioButton(); Y1apantisi3 = new javax.swing.JRadioButton(); Y1apantisi4 = new javax.swing.JRadioButton(); Y1apantisi1 = new javax.swing.JRadioButton(); getContentPane().setLayout(new java.awt.GridBagLayout()); setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE); jLabel1.setText("Please select the appropriate button"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.ipadx = 5; gridBagConstraints.ipady = 50; gridBagConstraints.insets = new java.awt.Insets(0, 95, 0, 95); getContentPane().add(jLabel1, gridBagConstraints); epomeno.setText("Next"); epomeno.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { epomenoActionPerformed(evt); } }); jPanel1.add(epomeno); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 6; gridBagConstraints.insets = new java.awt.Insets(18, 0, 18, 0); getContentPane().add(jPanel1, gridBagConstraints); Y1ekfwnisi.setText("jLabel2"); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 1; gridBagConstraints.ipady = 70; getContentPane().add(Y1ekfwnisi, gridBagConstraints); Y1apantisi2.setText("jRadioButton2"); Y1apantisi2.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { Y1apantisi2ActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 3; getContentPane().add(Y1apantisi2, gridBagConstraints); Y1apantisi3.setText("jRadioButton3"); Y1apantisi3.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { Y1apantisi3ActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 4; getContentPane().add(Y1apantisi3, gridBagConstraints); Y1apantisi4.setText("jRadioButton4"); Y1apantisi4.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { Y1apantisi4ActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 5; getContentPane().add(Y1apantisi4, gridBagConstraints); Y1apantisi1.setText("jRadioButton1"); Y1apantisi1.addItemListener(new java.awt.event.ItemListener() { public void itemStateChanged(java.awt.event.ItemEvent evt) { Y1apantisi1ItemStateChanged(evt); } }); Y1apantisi1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { Y1apantisi1ActionPerformed(evt); } }); gridBagConstraints = new java.awt.GridBagConstraints(); gridBagConstraints.gridx = 0; gridBagConstraints.gridy = 2; getContentPane().add(Y1apantisi1, gridBagConstraints); pack(); } private void epomenoActionPerformed(java.awt.event.ActionEvent evt) { DialogsMPC dialogans = new DialogsMPC(AA,ekfwnisi,apantisi1,apantisi2,apantisi3,apantisi4,swsti_apantisi); AnswersMPC ans = new AnswersMPC(ekfwnisi,sapantisi,swstiapantisi); if (apantisi.equals(sapa)){ dialogans.AA=AA; studentscorrectanswers.add(dialogans); ans.ekfwnisi=ek; if (sapa==apantisi1){ ans.sapantisi=ap1; ans.swstiapantisi=ap1; }else if (sapa==apantisi2){ ans.sapantisi=ap2; ans.swstiapantisi=ap2; }else if (sapa==apantisi3){ ans.sapantisi=ap3; ans.swstiapantisi=ap3; }else if (sapa==apantisi4){ ans.sapantisi=ap4; ans.swstiapantisi=ap4; } studentanswers.add(ans); }else if (apantisi!=sapa){ dialogans.AA=AA; studentwronganswers.add(dialogans); ans.ekfwnisi=ek; if (sapa.equals(apantisi1)){ if (apantisi.equals(apantisi2)){ans.sapantisi=ap2;} if (apantisi.equals(apantisi3)){ans.sapantisi=ap3;} if (apantisi.equals(apantisi4)){ans.sapantisi=ap4;} ans.swstiapantisi=ap1; }else if (sapa.equals(apantisi2)){ if (apantisi.equals(apantisi1)){ans.sapantisi=ap1;} if (apantisi.equals(apantisi3)){ans.sapantisi=ap3;} if (apantisi.equals(apantisi4)){ans.sapantisi=ap4;} ans.swstiapantisi=ap2; }else if (sapa.equals(apantisi3)){ if (apantisi.equals(apantisi1)){ans.sapantisi=ap1;} if (apantisi.equals(apantisi2)){ans.sapantisi=ap2;} if (apantisi.equals(apantisi4)){ans.sapantisi=ap4;} ans.swstiapantisi=ap3; }else if (sapa.equals(apantisi4)){ if (apantisi.equals(apantisi1)){ans.sapantisi=ap1;} if (apantisi.equals(apantisi2)){ans.sapantisi=ap2;} if (apantisi.equals(apantisi3)){ans.sapantisi=ap3;} ans.swstiapantisi=ap4; } studentanswers.add(ans); } left=left-1; EnglishTest.left=left; next++; EnglishTest.next=next; dispose(); if (left==0) { new MultipleChoiceTestResults().setVisible(true); } else new MultipleChoiceTest().setVisible(true); } private void Y1apantisi4ActionPerformed(java.awt.event.ActionEvent evt) { apantisi=ap4; // TODO add your handling code here: } private void Y1apantisi1ActionPerformed(java.awt.event.ActionEvent evt) { apantisi=ap1; // TODO add your handling code here: } private void Y1apantisi3ActionPerformed(java.awt.event.ActionEvent evt) { apantisi=ap3; // TODO add your handling code here: } private void Y1apantisi1ItemStateChanged(java.awt.event.ItemEvent evt) { //apantisi=apantisi1; // TODO add your handling code here: } private void Y1apantisi2ActionPerformed(java.awt.event.ActionEvent evt) { apantisi=ap2; // TODO add your handling code here: } public static void main(String args[]) { java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new MultipleChoiceTest().setVisible(true); } });} public int pickNumber( int aUpperLimit ){ if (aUpperLimit <0) { throw new IllegalArgumentException("UpperLimit must be positive: " + aUpperLimit); } //if the no-argument constructor is used, the seed is taken as//the current time; thus, Random objects created in rapid succession//in this way will have the same seed, and will generate the same sequence//of random numbers. Random generator = new Random(); return generator.nextInt(aUpperLimit);} // Variables declaration - do not modify private javax.swing.JRadioButton Y1apantisi1; private javax.swing.JRadioButton Y1apantisi2; private javax.swing.JRadioButton Y1apantisi3; private javax.swing.JRadioButton Y1apantisi4; private javax.swing.JLabel Y1ekfwnisi; private javax.swing.ButtonGroup buttonGroup1; private javax.swing.JButton epomeno; private javax.swing.JLabel jLabel1; private javax.swing.JPanel jPanel1; // End of variables declaration }