国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - 基于java swing實(shí)現(xiàn)答題系統(tǒng)

基于java swing實(shí)現(xiàn)答題系統(tǒng)

2021-03-23 13:32Koow Java教程

這篇文章主要為大家詳細(xì)介紹了基于java swing實(shí)現(xiàn)答題系統(tǒng),具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java swing實(shí)現(xiàn)答題系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

基于java swing實(shí)現(xiàn)答題系統(tǒng)

如上圖所示,代碼親測可用,如下:

  1. import java.awt.BorderLayout; 
  2. import java.awt.Color; 
  3. import java.awt.GridLayout; 
  4. import java.awt.event.ActionEvent; 
  5. import java.awt.event.ActionListener; 
  6. import java.awt.event.KeyEvent; 
  7. import java.awt.event.KeyListener; 
  8. import java.util.ArrayList; 
  9. import java.util.List; 
  10. import java.util.Random; 
  11.   
  12. import javax.swing.JButton; 
  13. import javax.swing.JFrame; 
  14. import javax.swing.JLabel; 
  15. import javax.swing.JPanel; 
  16. import javax.swing.JTextField; 
  17.   
  18. /** 
  19.  * 2017-01-09 
  20.  * @author Koow 
  21.  * 
  22.  */ 
  23. public class sa extends JFrame implements ActionListener, KeyListener { 
  24.  private JLabel title = null
  25.  private JButton submit = null
  26.  private JPanel center = null
  27.  // items用來跳轉(zhuǎn) 
  28.  private int item1 = 0; 
  29.  private int item2 = 1; 
  30.  private int item3 = 2; 
  31.  private int item4 = 3; 
  32.  private JLabel[] FormulaLabels; // 用來存放表達(dá)式的各個項(xiàng) 
  33.  private List<String> allResult; // 用來存放隨機(jī)出來的結(jié)果 
  34.  private JTextField[] userResults; // 用來讓用戶輸入結(jié)果 
  35.  private JLabel[] judge; // 用來顯示圖標(biāo),以顯示用戶輸入的結(jié)果是否正確 
  36.  private List<String> inputResults = null// 可以不要 
  37.  private JTextField scoreField = null
  38.  private int textCount = 1; // 用來記錄當(dāng)前焦點(diǎn)的位置 
  39.    
  40.  public static void main(String[] args){ 
  41.   sa s=new sa(); 
  42.     
  43.  } 
  44.   
  45.  public sa() { 
  46.   // TODO Auto-generated constructor stub 
  47.   inputResults = new ArrayList<String>(); 
  48.   // 實(shí)例化 
  49.   title = new JLabel("題目很簡單,認(rèn)真答哦!~(每題1分,答對加1分,答錯不扣分!)"); 
  50.   submit = new JButton("提交"); 
  51.   submit.addActionListener(this); 
  52.   GridLayout layout = new GridLayout(21, 6); 
  53.   center = new JPanel(layout); 
  54.   // 調(diào)用方法實(shí)例化方法 
  55.   initLables(); 
  56.   initUserRestult(); 
  57.   initJudge(); 
  58.   // 將各項(xiàng)填入到center面板(GridLayout) 
  59.   int count = 1; 
  60.   int formulaCount = 0; 
  61.   int userResultsCount = 0; 
  62.   int judgeCount = 0; 
  63.   while (count <= 120) { 
  64.    // 判斷count%6,確定要填哪個組件 
  65.    if (count % 6 == 1 || count % 6 == 2 || count % 6 == 3 || count % 6 == 4) { 
  66.     center.add(FormulaLabels[formulaCount]); 
  67.     formulaCount++; 
  68.    } else if (count % 6 == 5) { 
  69.     center.add(userResults[userResultsCount]); 
  70.     userResultsCount++; 
  71.    } else if (count % 6 == 0) { 
  72.     center.add(judge[judgeCount]); 
  73.     judgeCount++; 
  74.    } 
  75.    count++; 
  76.   } 
  77.   center.add(new JLabel()); 
  78.   center.add(new JLabel()); 
  79.   center.add(new JLabel("總分:")); 
  80.   scoreField = new JTextField(); 
  81.   scoreField.setEditable(false); 
  82.   center.add(scoreField); 
  83.   center.add(new JLabel()); 
  84.   center.add(new JLabel()); 
  85.   this.add(center, BorderLayout.CENTER); 
  86.   // 添加組件 
  87.   this.add(submit, BorderLayout.SOUTH); 
  88.   this.add(title, BorderLayout.NORTH); 
  89.   // 顯示 
  90.   this.setLocation(400, 10); 
  91.   this.setVisible(true); 
  92.   this.setSize(500, 700); 
  93.   this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
  94.   this.setTitle("簡單測試系統(tǒng)"); 
  95.   try { 
  96.    Thread.sleep(500); 
  97.   } catch (InterruptedException e) { 
  98.    // TODO Auto-generated catch block 
  99.    e.printStackTrace(); 
  100.   } 
  101.   userResults[0].requestFocus(); 
  102.  } 
  103.   
  104.  /** 
  105.   * 這個方法用來初始化算式各項(xiàng)的數(shù)組 
  106.   */ 
  107.  private void initLables() { 
  108.   int sum; 
  109.   int firstNumber; 
  110.   int secondNumber; 
  111.   allResult = new ArrayList<String>(); 
  112.   // 建立算式標(biāo)簽 
  113.   this.FormulaLabels = new JLabel[80]; 
  114.   // 將數(shù)組中的每一個標(biāo)簽都實(shí)例化 
  115.   for (int i = 0; i < 80; i++) { 
  116.    FormulaLabels[i] = new JLabel(); 
  117.   } 
  118.   // 將表達(dá)式各項(xiàng)賦值內(nèi)容,并將隨機(jī)數(shù)的和算出結(jié)果存入Arraylist中,以便后期核對結(jié)果使用  
  119.   while (item4 < 80) { 
  120.    firstNumber = new Random().nextInt(99) + 1; 
  121.    FormulaLabels[item1].setText(String.valueOf(firstNumber)); 
  122.    FormulaLabels[item2].setText("+"); 
  123.    secondNumber = new Random().nextInt(99) + 1; 
  124.    FormulaLabels[item3].setText(String.valueOf(secondNumber)); 
  125.    FormulaLabels[item4].setText("="); 
  126.    sum = firstNumber + secondNumber; 
  127.    allResult.add(String.valueOf(sum)); 
  128.    item1 += 4; 
  129.    item2 += 4; 
  130.    item3 += 4; 
  131.    item4 += 4; 
  132.   } 
  133.   // for(int i=0;i<80;i++){ 
  134.   // System.out.println(FormulaLabels[i].getText()); 
  135.   // } 
  136.  } 
  137.   
  138.  /** 
  139.   * 這個方法用來實(shí)例化userResults數(shù)組,并實(shí)例化里面的每一個JTextField 
  140.   */ 
  141.  private void initUserRestult() { 
  142.   userResults = new JTextField[20]; 
  143.   for (int i = 0; i < 20; i++) { 
  144.    userResults[i] = new JTextField(); 
  145.    userResults[i].setSize(20, 20); 
  146.    // 后加的監(jiān)聽 
  147.    userResults[i].addKeyListener(this); 
  148.   } 
  149.  } 
  150.   
  151.  /** 
  152.   * 這個方法用來實(shí)例化judge數(shù)組,并將里面的每一個Label實(shí)例化 
  153.   */ 
  154.  private void initJudge() { 
  155.   judge = new JLabel[20]; 
  156.   for (int i = 0; i < 20; i++) { 
  157.    judge[i] = new JLabel("好好算呦"); 
  158.   } 
  159.  } 
  160.   
  161.  // 實(shí)現(xiàn)監(jiān)聽方法,當(dāng)用戶點(diǎn)擊提交后要做的事情 
  162.  @Override 
  163.  public void actionPerformed(ActionEvent arg0) { 
  164.   // TODO Auto-generated method stub 
  165.   int score = 0; 
  166.   for (int i = 0; i < 20; i++) { 
  167.    // 將用戶輸入的結(jié)果全部獲取,存入一個ArrayList中,可以不要 
  168.    inputResults.add(userResults[i].getText().toString().trim()); 
  169.    System.out.println(userResults[i].getText().toString()); 
  170.    // 取出來用戶輸入的答案和之前算好的結(jié)果去比較,不對就把后面的標(biāo)簽設(shè)置為回答錯誤, 
  171.    // 如果正確就設(shè)置為回答正確 
  172.    String result = userResults[i].getText().toString().trim(); 
  173.    if (result.equals(allResult.get(i))) { 
  174.     judge[i].setText("回答正確"); 
  175.     judge[i].setForeground(Color.RED); 
  176.     score++; 
  177.    } else { 
  178.     judge[i].setText("回答錯誤"); 
  179.     judge[i].setForeground(Color.GREEN); 
  180.    } 
  181.   } 
  182.   scoreField.setText(String.valueOf(score)); 
  183.  } 
  184.   
  185.  @Override 
  186.  public void keyPressed(KeyEvent e) { 
  187.   // TODO Auto-generated method stub 
  188.   if (e.getKeyCode() == KeyEvent.VK_ENTER) { 
  189.    userResults[textCount].requestFocus(); 
  190.    if (textCount < 19) { 
  191.     textCount++; 
  192.    } 
  193.   } 
  194.  } 
  195.   
  196.  @Override 
  197.  public void keyTyped(KeyEvent e) { 
  198.   // TODO Auto-generated method stub 
  199.   
  200.  } 
  201.   
  202.  @Override 
  203.  public void keyReleased(KeyEvent e) { 
  204.   // TODO Auto-generated method stub 
  205.   
  206.  } 

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://blog.csdn.net/u012934723/article/details/54294713

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 亚洲视频欧美视频 | 欧美在线综合 | 亚洲色吧 | 久久久久国产精品 | 欧美电影免费网站 | 农村少妇kkkk7777 | 黄色网址在线免费 | 夫妻午夜影院 | 亚洲男人网 | 日韩欧美一区二区在线视频 | 欧美高清一区 | 国产成人av网站 | 狠狠的日 | 免费观看一级视频 | 国产欧美一区二区三区在线看 | 中国一级黄色 | 欧美999| 国产激情在线 | 黑人精品欧美一区二区蜜桃 | 久久精品国产亚洲 | 色爱av | 久久国产精品视频 | 国产精品国产a级 | 91春色| 欧美性一区二区三区 | 国产成人久久 | 午夜视频网| 精品久久一区二区 | 亚洲免费观看视频 | 日韩美女av在线 | 国产精品视频播放 | 综合伊人 | 免费观看www免费观看 | 爱色av网站 | 91精品国产九九九久久久亚洲 | 亚洲视频一区二区三区 | 亚洲国产中文字幕 | 亚洲精品成人在线 | 亚洲 欧美 日韩 丝袜 另类 | 互换娇妻呻吟hd中文字幕 | 在线电影亚洲 |