精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

手把手教你用Java打造一款簡單考試系統之二

開發 后端
設計一款應用程序,顯示駕照考試科目一的題目,進行計時,當用戶提交試卷后,判斷用戶的做題情況,統計得分,并顯示考試結果。

[[380638]]

上篇文章我們介紹了簡單考試系統的理論部分,這篇文章我們來一起看下其具體的實現。

一、項目背景

隨著移動互聯網的發展,網絡給我們帶來的是無窮的信息,也帶來了便利。與傳統考試模式相對比,在線考試具有很多優越性、它可以將傳統考試過程中的試卷組織、傳送、收集、評判等各環節縮小到一至兩個環節,不僅可以節約大量的時間、人力、物力與財力,還可以大幅度提高考試的客觀性和公正性。利用現有的計算機硬、軟件和網絡資源實現無紙質考試以避免傳統考試的不足。

二、項目目標

設計一款應用程序,顯示駕照考試科目一的題目,進行計時,當用戶提交試卷后,判斷用戶的做題情況,統計得分,并顯示考試結果。

三、項目實施

首先回顧上一節的Java簡單考試系統(上篇),完成界面的窗口、題目和選項、顯示進度、顯示按鈕和時間、顯示總分和表情,效果如下圖所示。

接下來,小編帶大家完成剩下的功能,具體的實現步驟如下。

(一)顯示背景圖,完成界面設計

1.setOpaque設置控件是否透明的,true表示不透明,false表示透明;

  1. buttona.setOpaque(false); 
  2.   buttonb.setOpaque(false); 
  3.   buttonc.setOpaque(false); 
  4.   buttond.setOpaque(false); 
  5.    
  6.   panel01.setOpaque(false); 
  7.   panel02.setOpaque(false); 
  8.   panel03.setOpaque(false); 
  9.   panel04.setOpaque(false); 

2.設置邊界

  1. label.setBounds(0, 0, bg.getIconWidth(), bg.getIconHeight()); 

3.把整個窗格轉化為面板

  1. imagePanel=(JPanel)this.getContentPane(); 
  2.  imagePanel.setOpaque(false); 

4.把背景圖添加到分層窗格的最底層

  1. this.getLayeredPane().add(label,new Integer(Integer.MIN_VALUE)); 

效果圖如下圖所示:

(二)給控件屬性添加監聽事件

  1. btn_last.addActionListener(ml); 
  2. btn_next.addActionListener(ml); 
  3. btn_finish.addActionListener(ml); 
  4. buttona.addActionListener(ml); 
  5. buttonb.addActionListener(ml); 
  6. buttonc.addActionListener(ml); 
  7. buttond.addActionListener(ml); 

(三)創建計時器,然后讓計時器啟動

  1. timer = new Timer(1000,new TimerListener());           
  2.   timer.start(); 

(四)完成事件處理

1.紅色按鈕表示未做的題,綠色表示已做的題。

  1. public class MyListener implements ActionListener{ 
  2. @Override 
  3. public void actionPerformed(ActionEvent e) { 
  4.         // TODO Auto-generated method stub 
  5.         for(int i=0;i<5;i++){ 
  6.             if(e.getSource()==btn_index[i]){//按鈕1到5 
  7.                 num = i;//更新當前題號 
  8.                 showItem(num);//切換題目和選項 
  9.                 showMychoice(num);//顯示已選選項 
  10.                 showButton(num);//判斷顯示哪些按鈕 
  11.             } 
  12.         } 

(1)實現上一題功能

  1. if(e.getSource()==btn_last){ 
  2.             if(num>0){ 
  3.                 num--; 
  4.             } 
  5.             showItem(num); 
  6.             showMychoice(num); 
  7.             showButton(num); 
  8.         } 

(2)實現下一題功能

  1. if(e.getSource()==btn_next){ 
  2.             if(num<str_problem.length-1){ 
  3.                 num++; 
  4.             } 
  5.             showItem(num); 
  6.             showMychoice(num); 
  7.             showButton(num); 
  8.         } 

(3)實現單選功能

  1. if(e.getSource()==buttona){ 
  2.             my_answer[num]=1; 
  3.             btn_index[num].setBackground(Color.GREEN); 
  4.  
  5.         } 
  6.  
  7.         if(e.getSource()==buttonb){ 
  8.             my_answer[num]=2; 
  9.             btn_index[num].setBackground(Color.GREEN); 
  10.         } 
  11.  
  12.         if(e.getSource()==buttonc){ 
  13.             my_answer[num]=3; 
  14.             btn_index[num].setBackground(Color.GREEN); 
  15.         } 
  16.  
  17.         if(e.getSource()==buttond){ 
  18.             my_answer[num]=4; 
  19.             btn_index[num].setBackground(Color.GREEN); 
  20.         } 

(4)交卷,停止計時器

  1. if(e.getSource()==btn_finish){//交卷 
  2.             timer.stop();//停止 
  3.             TextFinish(); 
  4.  
  5.         } 

效果圖如下圖:

2.用戶自己提交試卷,當分數不是滿分則顯示大哭的表情。

(1)設置選中的答案

  1. public void showItem(int i){ 
  2. problem.setText(str_problem[i]); 
  3. buttona.setText(answer_a[i]); 
  4. buttonb.setText(answer_b[i]); 
  5. buttonc.setText(answer_c[i]); 
  6. buttond.setText(answer_d[i]); 
  7. group.clearSelection();//清空 

(2)顯示已選選項,i為當前題號

  1. public void showMychoice(int i){ 
  2. switch(my_answer[i]){ 
  3. case 1: 
  4.         buttona.setSelected(true); 
  5.         break; 
  6. case 2: 
  7.         buttonb.setSelected(true); 
  8.         break; 
  9. case 3: 
  10.         buttonc.setSelected(true); 
  11.         break;   
  12. case 4: 
  13.         buttond.setSelected(true); 
  14.         break;   
  15.   } 

(3)判斷顯示哪些按鈕,i為當前題號

  1. public void showButton (int i){ 
  2. if(i==0){//第一題 
  3.         btn_last.setEnabled(false); 
  4.         btn_next.setEnabled(true); 
  5.  
  6. }else if(i==str_problem.length-1){//最后一題 
  7.         btn_last.setEnabled(true); 
  8.         btn_next.setEnabled(false); 
  9. }else{//其余題 
  10.         btn_last.setEnabled(true); 
  11.         btn_next.setEnabled(true); 
  12.     }        

(4)考試結束的方法

  1. public void TextFinish(){ 
  2. btn_last.setEnabled(false);//不能點擊 
  3. btn_next.setEnabled(false); 
  4. btn_finish.setEnabled(false); 
  5. buttona.setEnabled(false); 
  6. buttonb.setEnabled(false); 
  7. buttonc.setEnabled(false); 
  8. buttond.setEnabled(false); 

4.1判斷用戶選的答案是否正確

  1. for(int i=0;i<4;i++){ 
  2.         btn_index[i].setEnabled(false); 
  3.         if(my_answer[i]==right[i]){ 
  4.             score=score+20; 
  5.         } 

4.2 設置分數,如果分數等于100分笑臉,反之哭臉

  1. label_score.setText("總成績:"+score); 
  2. if(score==100){ 
  3.         image.setIcon(new ImageIcon("image//lauge.jpg"));            
  4. }else
  5.         image.setIcon(new ImageIcon("image//cry.jpg")); 
  6.   } 

效果圖如下圖:

3.考試時間到,系統自動提交試卷。當分數為滿分則顯示大笑的表情。

  1. public class TimerListener implements ActionListener{ 
  2.  
  3. @Override 
  4. public void actionPerformed(ActionEvent e) { 
  5.         // TODO Auto-generated method stub 
  6.         second--; 
  7.         if(second<0){ 
  8.             minute--; 
  9.             second=59; 
  10.         } 
  11.         label_time.setText(minute+":"+second); 
  12.         if(minute==0 && second==0){ 
  13.             timer.stop(); 
  14.             label_time.setText("考試結束!"); 
  15.             TextFinish(); 
  16.         } 
  17.   } 
  18.  

效果圖如下圖:

四、總結

1.介紹了JLabel、JButton、JPanel、ButtonGroup、JRadioButton單選框組件的基本使用,以及相應的事件處理,完成界面的設計。

2.事件處理函數的添加,難點是運用理解構造函數、內部類的創建。這些代碼比較簡單,也是一個簡單的小案例,希望對你有所幫助!

3.如果有需要本文項目代碼的小伙伴,可以在后臺回復“考試系統”四個字進行獲取。

本文轉載自微信公眾號「Java進階學習交流」,可以通過以下二維碼關注。轉載本文請聯系Java進階學習交流公眾號。

 

責任編輯:武曉燕 來源: Java進階學習交流
相關推薦

2021-02-01 08:41:06

Java考試系統

2021-01-05 09:04:20

Javatxt文件

2023-05-22 10:04:24

2021-01-04 09:55:26

Java移動互聯網

2017-09-14 09:09:04

php應用LibreOfficeWord轉HTML

2022-02-17 10:26:17

JavaScript掃雷游戲前端

2021-01-10 08:14:01

Go語言TCP掃描器

2021-11-01 10:26:07

CanvasAPI畫布技術HTML5

2021-12-30 08:56:57

Python摸魚倒計界面Python基礎

2021-08-13 09:01:31

Python小游戲Python基礎

2024-01-07 20:00:27

2021-01-21 06:04:55

Go語言TCP目錄生成器

2022-10-19 14:30:59

2021-08-09 13:31:25

PythonExcel代碼

2021-01-13 09:03:48

Java游戲函數

2021-01-12 05:05:15

Java對碰游戲

2022-08-04 10:39:23

Jenkins集成CD

2021-02-06 14:55:05

大數據pandas數據分析

2021-02-04 09:00:57

SQLDjango原生

2011-03-28 16:14:38

jQuery
點贊
收藏

51CTO技術棧公眾號

中文字幕第一页在线视频| 日韩理论片在线观看| 国产一卡二卡在线| 欧美美乳视频| 91精品国产综合久久久久| av无码久久久久久不卡网站| 青青草手机在线| 久久精品久久久精品美女| 欧美激情在线一区| 91资源在线播放| 91亚洲无吗| 欧美日韩1234| 国产91xxx| 欧美成年黄网站色视频| www.久久久久久久久| 国产一区二区色| 久久精品国产亚洲av香蕉| 成人av国产| 亚洲精品av在线| www,av在线| 国产综合色在线观看| 午夜免费久久看| 自拍偷拍视频在线| 二区在线视频| 97精品国产97久久久久久久久久久久| 91精品视频一区| 糖心vlog精品一区二区| 国产精品久久久免费| 欧美成人性生活| 国产在线观看免费视频软件| 香蕉人人精品| 亚洲黄色免费三级| 国产大学生av| 久久9999免费视频| 欧美日韩精品电影| 日本激情视频在线| 最近在线中文字幕| 五月综合激情网| 男人添女人下部视频免费| 看女生喷水的网站在线观看| 国产视频一区二区在线观看| 九色91在线视频| 香蕉视频911| 波多野洁衣一区| 国产精品久久久久久久久婷婷 | 在线观看麻豆| 久久久精品人体av艺术| 久久精品日产第一区二区三区| а√天堂资源在线| 粉嫩av一区二区三区| 91免费观看| a天堂在线视频| 国产91丝袜在线播放九色| 91久久精品国产91久久性色tv| 国产精品久久久久久久免费| 国产一区在线精品| 亚洲最大福利视频网| 亚洲国产精品久久久久久6q| 国产成人亚洲精品青草天美| 99在线影院| 午夜视频在线免费播放| 91色综合久久久久婷婷| 日韩av电影免费播放| 成年人在线看| 亚洲精选视频在线| 国产精品av免费观看| 国产理论电影在线| 狠狠躁夜夜躁人人爽超碰91| 麻豆av免费在线| 欧美综合影院| 欧美变态口味重另类| 亚洲中文字幕无码av| 亚洲aa在线| 最近免费中文字幕视频2019| 好吊日在线视频| 中国女人久久久| 日本欧美国产在线| 国产一区二区小视频| 国产成人精品免费视频网站| 国内精品二区| 成年人在线免费观看| 亚洲综合一二三区| 日韩avxxx| 91精品网站在线观看| 丰满少妇在线观看资源站| 国产精品理论在线| 欧美日一区二区| 日韩中文字幕国产精品| 成年人av电影| 亚洲一区图片| 成人午夜激情免费视频| 人妻少妇精品无码专区| 日本一区二区免费在线| 黄网站色视频免费观看| 欧美黄色网页| 日韩欧美成人午夜| 欧美三级视频网站| 亚洲黄色免费| 国产精品一区二区三区久久| 亚洲av无码国产综合专区 | 日韩成人av免费| 国产96在线亚洲| xxxxxxxxx欧美| 中文字幕第四页| 国产精品一区二区果冻传媒| 欧美一区二区视频17c| av大大超碰在线| 在线这里只有精品| 国产人成视频在线观看| 999成人网| 清纯唯美亚洲综合| 亚洲a视频在线| 国产精品毛片久久久久久| 国产一区二区网| 日韩三级av高清片| 色偷偷噜噜噜亚洲男人的天堂| 日本一区二区三区四区五区| 国产在线精品一区在线观看麻豆| 欧美一区二区三区在线免费观看| 波多野结依一区| 日韩欧美成人一区二区| 四虎地址8848| 久久精品久久久精品美女| 日韩av电影免费在线观看| 秋霞伦理一区| 欧美成人r级一区二区三区| 亚洲精品一区二区三区在线播放| 免费日韩一区二区| 精品国产乱码一区二区三区四区| 国产激情在线| 欧美人与性动xxxx| 日本少妇xxxxx| 久久精品毛片| 欧美人xxxxx| 免费毛片b在线观看| 精品国产一区二区三区久久影院| 朝桐光av在线| 激情文学综合丁香| 杨幂一区欧美专区| 国产精品66| 日韩在线小视频| 中文字幕+乱码+中文乱码www| 久久久三级国产网站| 漂亮人妻被中出中文字幕| 久久a级毛片毛片免费观看| 欧美国产一区二区三区| 亚洲精品成av人片天堂无码| 一区二区三区在线视频播放| 国产黑丝在线视频| 欧美激情亚洲| 99在线免费观看视频| 成人性生交大片免费看网站 | av资源种子在线观看| 在线观看一区不卡| 国产7777777| 久久99国产精品久久| 永久免费在线看片视频| 午夜日韩影院| 66m—66摸成人免费视频| 三级av在线播放| 在线观看精品一区| 91av手机在线| 国产盗摄视频一区二区三区| 蜜臀精品一区二区| 香蕉视频一区二区三区| 国产精国产精品| 日本不卡在线| 欧美电视剧在线看免费| 日韩av一二三区| 久久九九久精品国产免费直播| 国产视频一区二区三区在线播放| 秋霞欧美视频| 99影视tv| 成人日韩在线| 欧美刺激性大交免费视频| 手机在线精品视频| 欧美亚洲动漫制服丝袜| √天堂中文官网8在线| 成人aa视频在线观看| 男人操女人逼免费视频| 日韩精品一区二区三区免费观影| 亚洲mm色国产网站| 色多多在线观看| 中日韩午夜理伦电影免费| 精品人妻一区二区三区四区不卡| 欧美日韩一区二区精品| 亚洲AV成人无码精电影在线| www.欧美精品一二区| 香港日本韩国三级网站| 亚洲免费大片| 亚洲免费视频播放| 亚洲自拍电影| 99国精产品一二二线| 久久天堂av| 久久久久久久网站| 在线观看免费版| 日韩高清中文字幕| 99精品免费观看| 色婷婷综合久久久中文字幕| 精品国产欧美日韩不卡在线观看| 99国产精品久久久| 亚洲五月激情网| 老妇喷水一区二区三区| 欧美日韩dvd| 不卡在线一区二区| 久久精彩视频| 日韩中文字幕无砖| 国产日韩精品在线| 亚洲精品永久免费视频| 久久久久国产精品一区| 男人天堂手机在线| 亚洲全黄一级网站| 天天综合网在线观看| 欧美一级搡bbbb搡bbbb| 在线亚洲欧美日韩| 91黄视频在线观看| 免费看日韩毛片| 一区二区三区四区精品在线视频| 无码少妇精品一区二区免费动态| 成人的网站免费观看| 夜夜爽久久精品91| 奇米影视在线99精品| 日本免费一级视频| 99精品视频免费全部在线| 大胆欧美熟妇xx| 欧美一区成人| 在线一区高清| 欧美激情欧美| 亚洲精品国产系列| 欧美综合一区| 日韩中文字幕一区| 欧美精品momsxxx| 欧美日韩国产综合在线| 日韩欧美黄色| 噜噜噜噜噜久久久久久91| 国产精品高潮呻吟久久久久| 国产精品高清一区二区三区| 精品国产乱码一区二区三区| 国产日韩在线亚洲字幕中文| 91综合国产| 国产精品美女免费| 成人在线中文| 91精品视频专区| 欧洲精品99毛片免费高清观看| 成人天堂噜噜噜| 日韩区一区二| 国产伦精品一区二区三区| 国产一区福利| 蜜桃麻豆91| 欧美日韩激情| 四虎免费在线观看视频| 五月天综合网站| 伊人再见免费在线观看高清版 | 亚洲乱码一区二区三区在线观看| 国产一区在线观看免费| 中文字幕视频一区二区三区久| 久久福利免费视频| 亚洲精品菠萝久久久久久久| 欧美日韩激情在线观看| 亚洲成人精品在线观看| 久久99国产综合精品免费| 色8久久精品久久久久久蜜| 国产偷人爽久久久久久老妇app | 自拍欧美日韩| 美女扒开大腿让男人桶| 国产欧美日本| 激情五月俺来也| 国产美女在线精品| 亚洲久久久久久| 国产精品无码永久免费888| 国语对白在线播放| 天天av天天翘天天综合网| 无码人妻精品一区二区| 欧美精品日韩精品| 日韩一区二区三区不卡| 亚洲性生活视频在线观看| 黄色网址视频在线观看| 久久久久久久久久久免费 | 91在线观看免费| 国产精品久久久网站| 日韩精品欧美一区二区三区| 午夜欧美在线| 国产免费毛卡片| 国产一区二区精品在线观看| 在线观看国产三级| 国产精品二三区| 国产网友自拍视频| 欧美日韩国产高清一区| 欧美 日韩 中文字幕| 国产一区二区激情| 国产后进白嫩翘臀在线观看视频 | 成年永久一区二区三区免费视频| 成人午夜电影免费在线观看| 国内黄色精品| 亚洲中文字幕无码av永久| 喷白浆一区二区| 国产chinese中国hdxxxx| 国产精品久久久久永久免费观看 | 在线欧美福利| 天天干天天av| 久久亚洲精品国产精品紫薇 | 日韩欧美成人区| 国产强被迫伦姧在线观看无码| 亚洲裸体xxxx| 丝袜美腿av在线| 成人国产精品一区二区| 精品一区毛片| 男女日批视频在线观看| 狠狠色狠狠色综合日日91app| 一区二区三区四区免费| 香蕉成人伊视频在线观看| 国产免费的av| 伊人av综合网| 色婷婷综合久久久中字幕精品久久 | 手机在线视频你懂的| 久久五月激情| 玖草视频在线观看| 亚洲一区二区三区四区五区中文| 国产又黄又粗又猛又爽| 亚洲欧美制服综合另类| av资源在线| 国产青春久久久国产毛片| 欧美成人午夜| www.偷拍.com| 亚洲日本在线a| 国产又大又粗又长| 色偷偷av亚洲男人的天堂| 992tv国产精品成人影院| 欧美欧美一区二区| 久久精品毛片| 自拍偷拍亚洲天堂| 亚洲超碰精品一区二区| 免费观看黄一级视频| 欧美富婆性猛交| silk一区二区三区精品视频 | 色婷婷粉嫩av| 欧美日韩在线播放三区| 高清毛片在线看| 国产精品xxx视频| jvid福利在线一区二区| 婷婷六月天在线| 国产精品乱人伦| 91久久久久国产一区二区| 色av吧综合网| 亚洲一区二区小说| 激情视频小说图片| 成人午夜在线免费| 在线观看精品国产| 亚洲人成电影网| 亚洲伦乱视频| 亚洲午夜在线观看| 国产综合一区二区| 久久精品视频免费在线观看| 欧美xxxxxxxxx| 色戒汤唯在线| 色一情一乱一伦一区二区三区| 日本在线不卡视频一二三区| 欧美性生给视频| 日韩午夜在线播放| 国产免费拔擦拔擦8x在线播放| 久久久久一区二区三区| 视频一区二区三区中文字幕| 91狠狠综合久久久久久| 3d动漫精品啪啪| 丰满诱人av在线播放| 蜜桃av噜噜一区二区三区| 美女视频一区二区| 欧美片一区二区| 亚洲欧洲高清在线| 精品国产黄a∨片高清在线| 奇米777四色影视在线看| 不卡一区二区三区四区| 天堂网一区二区| 久久成人av网站| 久久九九热re6这里有精品| 男人插女人下面免费视频| 亚洲精品视频一区| 四虎影视精品成人| 成人免费在线网址| 夜夜夜久久久| 手机在线免费看毛片| 精品视频久久久久久| 日韩城人网站| 狠狠97人人婷婷五月| 国产精品久久久久四虎| 日本激情一区二区三区| 国产精品久在线观看| 好吊日精品视频| 免费观看a级片| 欧美mv日韩mv亚洲| 国产激情欧美| 久久久999视频| 曰韩精品一区二区| 韩日视频在线| 国产精品免费一区二区三区| 麻豆精品视频在线观看| 国产免费av一区二区| 久久精品美女视频网站| 一区二区小说| 苍井空张开腿实干12次|