精品欧美一区二区三区在线观看 _久久久久国色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技術棧公眾號

亚洲免费av一区| 欧美日韩在线精品| 欧美人妻精品一区二区免费看| 视频一区视频二区欧美| 精品久久久久久久久久| 欧美成ee人免费视频| 国产又粗又长又黄| 国产欧美精品| 欧美精品在线第一页| 中文字幕在线免费看线人| 美女视频一区| 欧美日韩美女在线观看| 色中文字幕在线观看| 婷婷五月综合久久中文字幕| 免费在线看成人av| 性欧美在线看片a免费观看| 国产精品一区二区亚洲| 日本国产精品| 欧美一级一区二区| 密臀av一区二区三区| 成全电影大全在线观看| 欧美激情中文不卡| 国产伦精品一区二区三区照片| 亚洲免费在线观看av| 日韩不卡一区| 亚洲男人天堂手机在线| 久久人妻少妇嫩草av蜜桃| 日本一区二区电影| 欧美性高潮床叫视频| 免费看欧美一级片| 国产在线激情| 国产精品视频yy9299一区| 久久国产一区二区| 欧美亚洲精品在线观看| 国产真实精品久久二三区| 欧美综合第一页| 精品一区在线视频| 中文字幕一区二区精品区| 中文字幕精品av| 熟女俱乐部一区二区| 国产精品乱战久久久| 欧美大片日本大片免费观看| 激情黄色小视频| 成人福利片在线| 欧洲av在线精品| 无码日韩人妻精品久久蜜桃| 久九九久频精品短视频| 欧美日韩亚洲系列| 日本www在线播放| 美女的胸无遮挡在线观看| 亚洲一区二区不卡免费| 一二三四中文字幕| 性欧美1819sex性高清大胸| 亚洲欧美日韩久久| 国产成人精品免费看在线播放 | 亚洲欧美在线网| 国产鲁鲁视频在线观看免费| 国产片一区二区三区| 日本欧美精品久久久| 国产中文字幕在线| 中文字幕 久热精品 视频在线| 四虎永久国产精品| 又爽又大又黄a级毛片在线视频| 国产欧美日韩久久| 亚洲欧美日韩国产yyy | 亚洲码国产岛国毛片在线| 影音欧美亚洲| 日韩成人伦理| 午夜a成v人精品| 日韩av资源在线| 成人黄色免费网站| 91精品国产91久久久久久一区二区 | 亚洲跨种族黑人xxx| 国产成人精品无码免费看夜聊软件| 性欧美lx╳lx╳| 亚洲午夜激情免费视频| 国产精品免费在线视频| 欧美日韩岛国| 欧美在线视频一区二区| 自拍偷拍精品视频| 国产激情一区二区三区桃花岛亚洲| 超碰97人人人人人蜜桃| 午夜在线视频免费| 中文字幕在线一区| 日韩激情视频一区二区| 亚洲第一二三四区| 88在线观看91蜜桃国自产| 不许穿内裤随时挨c调教h苏绵| 露出调教综合另类| 一区二区欧美久久| 青青操视频在线播放| 国产人成精品一区二区三| 国产精品久久久久久av下载红粉| 99久久精品国产色欲| 99国产精品视频免费观看| 神马欧美一区二区| 黑人玩欧美人三根一起进| 欧美性猛交xxxx富婆弯腰| 亚洲第一色av| 九九亚洲精品| 免费av一区二区| 日韩在线视频不卡| 国产成人av自拍| 无遮挡亚洲一区| 99热99re6国产在线播放| 欧美丝袜自拍制服另类| 制服丝袜在线第一页| 日韩国产欧美| 9.1国产丝袜在线观看| 国产精品视频a| 国产亚洲欧美日韩日本| 9色porny| 国产美女精品视频免费播放软件 | 免费黄色在线看| 欧美三级xxx| 曰本三级日本三级日本三级| 精品久久影院| 欧美一级电影免费在线观看| 国产精品女同一区二区| 国产视频911| 内射国产内射夫妻免费频道| 中文字幕久久精品一区二区| 自拍偷拍亚洲欧美| 黄色av一级片| 99久久精品国产麻豆演员表| 欧洲金发美女大战黑人| 欧美xxxx网站| 中文字幕久久久av一区| 亚洲精品中文字幕乱码三区91| 国产不卡在线视频| 国产在线拍揄自揄拍无码| jizz久久久久久| 亚洲天堂第二页| 日本中文字幕在线| 99久久er热在这里只有精品15| 男人的天堂视频在线| 色综合视频一区二区三区日韩| 亚洲性生活视频| 欧美国产成人精品一区二区三区| 不卡视频在线看| 欧美亚洲黄色片| 波多野结衣一区二区三区免费视频| www.欧美精品一二三区| 一级做a爱片久久毛片| 中国色在线观看另类| 五月天亚洲视频| 日韩激情在线| 成人免费视频网| 国产精品扒开做爽爽爽的视频| 欧美日韩国产bt| 91香蕉视频网| 国产专区综合网| 无码日本精品xxxxxxxxx| 999国产精品一区| 久久久久在线观看| 亚州精品国产精品乱码不99按摩| 亚洲成人动漫在线观看| 特级西西人体4444xxxx| 野花国产精品入口| 久久久久天天天天| 婷婷激情一区| 日韩视频永久免费观看| japanese国产| 亚洲国产色一区| 黄色工厂在线观看| 久久久天天操| 亚洲欧美日韩精品在线| 久久久久毛片免费观看| 国内外成人免费激情在线视频| 天堂中文网在线| 色婷婷综合五月| 大地资源高清在线视频观看| 国产不卡视频在线观看| 欧美性大战久久久久xxx| 国产精品一区二区99| 成人福利在线视频| 精品精品导航| 亚洲社区在线观看| 国产精品日韩无码| 五月综合激情日本mⅴ| 阿v天堂2014| 国产福利精品导航| 欧美变态另类刺激| 国产精品99在线观看| 国产成人一区二区三区免费看| 丁香六月综合| 欧美成人免费在线视频| 日韩私人影院| 6080日韩午夜伦伦午夜伦| 午夜偷拍福利视频| 国产精品午夜免费| 催眠调教后宫乱淫校园| 日本亚洲最大的色成网站www| 久久久国产精华液999999| 玖玖玖免费嫩草在线影院一区| 国产精品亚洲综合天堂夜夜| xxxx在线视频| 精品国产一区二区在线| 神马久久久久久久久久| 欧美久久一区二区| 人妻 日韩精品 中文字幕| 亚洲男人都懂的| 国产人妻大战黑人20p| 丁香六月综合激情| 中文字幕在线综合| 亚洲在线电影| 国内少妇毛片视频| 911久久香蕉国产线看观看| 久久久久高清| www.爱久久| 成人黄色在线播放| 亚洲四虎影院| 7m第一福利500精品视频| 神马午夜伦理不卡| 久久久成人精品| 国产高清一区在线观看| 亚洲第一区中文99精品| 国产av精国产传媒| 欧美日韩久久久一区| 中文字幕免费观看| 大荫蒂欧美视频另类xxxx| 欧美精品一区二区蜜桃| 亚洲免费观看视频| 成人性视频免费看| 中文字幕av在线一区二区三区| 亚洲天堂成人av| 成人精品小蝌蚪| 亚洲区 欧美区| 国产乱码一区二区三区| 亚洲xxx在线观看| 日本欧美大码aⅴ在线播放| 成人免费在线小视频| 最新日韩av| www插插插无码视频网站 | 欧美激情一二三| 丝袜综合欧美| 久久99国产综合精品女同| 国产成人午夜| 欧美成年人网站| 伊人手机在线| 欧美福利小视频| √8天堂资源地址中文在线| 欧美激情啊啊啊| 91探花在线观看| 久久免费高清视频| 狠狠操一区二区三区| 欧美一区二区三区四区在线| 色吧亚洲日本| 日韩av电影中文字幕| 免费观看一级欧美片| 日本精品久久久| 性高爱久久久久久久久| 国产激情久久久| 日韩精品第一| 91日本在线视频| 免费一区二区三区在线视频| 91丨九色丨国产| 国产成人福利av| 欧美日韩免费观看一区| 波多野结衣在线观看一区二区三区| 亚洲精品影院| 欧美伊人久久| 男女啪啪免费视频网站| 亚洲欧美久久久| 高清一区在线观看| 国产一区二区剧情av在线| 波多野结衣三级视频| 99在线精品观看| 亚洲欧洲久久久| 综合久久久久久久| 国产一级淫片a| 在线看不卡av| 性欧美8khd高清极品| 亚洲精品动漫100p| 亚洲搞黄视频| 久久久久久91| a成人v在线| 91青青草免费在线看| 色婷婷久久久| 超碰免费在线公开| 一区二区三区成人精品| 在线免费观看视频黄| 国v精品久久久网| 91久久免费视频| 亚洲男人天堂av网| 无码人妻精品一区二区蜜桃色欲| 欧美精品黑人性xxxx| 特级丰满少妇一级aaaa爱毛片| 亚洲最新av在线网站| 日本片在线观看| 国产精品老女人视频| 99久久人爽人人添人人澡| 色噜噜色狠狠狠狠狠综合色一 | 日日鲁鲁鲁夜夜爽爽狠狠视频97 | 国产综合欧美在线看| 热久久天天拍国产| 欧美,日韩,国产在线| 狠狠色综合色综合网络| 国产ts在线播放| 亚洲一区日韩精品中文字幕| 中文字幕一区二区三区免费看| 欧美成人在线直播| avtt在线播放| 欧美亚洲成人精品| 一区二区精彩视频| 亚洲一区三区视频在线观看| 国产精品久久久久久久久久妞妞| 久久精品久久99| 中文字幕av一区二区三区| 中文字幕亚洲高清| 精品国产一区二区三区四区四| 在线中文资源天堂| 欧美最顶级丰满的aⅴ艳星| 五月亚洲婷婷| 亚洲综合激情五月| 蜜桃视频在线观看一区二区| 美女100%无挡| 黑人狂躁日本妞一区二区三区 | 99久久精品国产一区色| 一本色道久久综合狠狠躁篇的优点| 超碰97国产精品人人cao| 91手机视频在线观看| 日韩国产欧美| 欧美日韩在线观看不卡| 久久欧美一区二区| 亚洲伊人成人网| 亚洲第一福利网站| 九色91在线| 国产欧美丝袜| 伊人精品成人久久综合软件| 久久久久久无码精品人妻一区二区| 中文字幕亚洲精品在线观看| 中文字幕1区2区3区| 中文日韩在线观看| 欧美日一区二区三区| 日韩精品久久久| 日本三级亚洲精品| 国产真人真事毛片视频| 欧美在线看片a免费观看| 国产精品一区在线看| 国产精品成人一区二区| 欧美综合久久| 91精品999| 亚洲欧美日韩成人高清在线一区| 国产精品午夜福利| 欧美成人合集magnet| 亚洲免费一区三区| 真人抽搐一进一出视频| 成人av电影在线网| 精品欧美一区二区三区免费观看| 亚洲国产精品va在线观看黑人| 美女搞黄视频在线观看| 欧美另类视频在线| 日本vs亚洲vs韩国一区三区| 91ts人妖另类精品系列| 欧美久久久久久久久中文字幕| 天堂аⅴ在线地址8| 亚洲一区久久久| 在线播放日韩| 国产一二三四五区| 欧美日本在线看| 蜜桃传媒在线观看免费进入| 国产区一区二区| 视频一区二区国产| 久久av红桃一区二区禁漫| 日韩一区二区三区免费观看| 国产免费拔擦拔擦8x高清在线人| 玛丽玛丽电影原版免费观看1977 | 欧美一区二区三区人| 亚洲按摩av| 欧美高清性xxxxhd| 久久成人精品无人区| 欧美黄色一级网站| 亚洲毛片在线免费观看| 日韩三级成人| 国产美女网站在线观看| 中文字幕欧美日韩一区| 成人h动漫精品一区二区无码| 97色在线视频| 久久中文字幕二区| 老熟女高潮一区二区三区| 色婷婷国产精品| 在线黄色网页| 日本一区二区在线视频| 国产精品一区二区男女羞羞无遮挡 | 日本xxxx免费| 91极品视觉盛宴| 人交獸av完整版在线观看| 日本高清不卡一区二区三| 国产精品911| 波多野结衣黄色网址| 欧美日韩国产成人| 日本一本不卡| 加勒比精品视频| 欧美一级黄色大片| 蜜桃视频成人m3u8| 日韩欧美不卡在线| 18成人在线观看| 国产中文在线观看| 国产精品毛片va一区二区三区|