路是爬出來(lái)的

          設(shè)計(jì)可組裝的j2me UI(七) Choice

             艾,不想解釋了。貼代碼算了

          java 代碼


           


          1. /******************************************************************** 

          2.  *  

          3.  * 版權(quán)說(shuō)明,此程序僅供學(xué)習(xí)參考。不能用于商業(yè) 

          4.  *  

          5.  ********************************************************************/  

          6. package org.pook.ui;  

          7.   

          8. import javax.microedition.lcdui.Graphics;  

          9. import javax.microedition.lcdui.Image;  

          10.   

          11. import org.pook.ui.core.Platform;  

          12.    

          13.    

          14.   

          15. /** 

          16.  * <b>類(lèi)名:ChoiceGroup.java</b> </br>  

          17.  * 編寫(xiě)日期: 2006-9-19 <br/> 

          18.  * 程序功能描述?? 本Class是一個(gè)多選擇列表,因?yàn)轫?xiàng)目的原??,此列表是??個(gè)固定形式的<br/> 

          19.  * 可以在Form上進(jìn)行添加刪??,只不過(guò)表現(xiàn)形式固??<br/> 

          20.  * Demo: <br/> 

          21.  * Bug: <br/> 

          22.  *  

          23.  * 程序變更日期 ??<br/>  

          24.  * 變更作??? ??<br/>  

          25.  * 變更說(shuō)明 ??<br/> 

          26.  *  

          27.  * @author wuhua </br> <a href="mailto:rrq12345@163.com">rrq12345@163.com</a> 

          28.  */  

          29. public class Choice extends Part {  

          30.       

          31.        

          32.     private boolean  select;  

          33.       

          34.     /** 顯示選擇狀??? */  

          35.     private Image[] imageElements;  

          36.    

          37.    

          38.       

          39.     public Choice(String label,  

          40.             Image[] imageElements, boolean  select) {  

          41.         super(0000);  

          42.         if(label == null)  

          43.             label = "";  

          44.         this.label = label;  

          45.         this.select = select;  

          46.         this.imageElements = imageElements;  

          47.        

          48.     }  

          49.   

          50.        

          51.     public void paint(Graphics g) {  

          52.         paintChoiceImpl(g);  

          53.   

          54.     }  

          55.   

          56.     private void paintChoiceImpl(Graphics g) {  

          57.        

          58.         paintChoice(g);  

          59.           

          60.     }  

          61.   

          62.       

          63.       

          64.     private void paintChoice(Graphics g) {  

          65.         g.drawImage(select?imageElements[0]:imageElements[1],view[X], view[Y],  

          66.                     Graphics.TOP|Graphics.LEFT);  

          67.         paintLabel(g);  

          68.           

          69.     }  

          70.     private void paintLabel(Graphics g) {  

          71.         if(label.equals(""))  

          72.             return;  

          73.         g.setColor(fontColor);  

          74.         g.drawString(label,view[X] + imageElements[0].getWidth() + 4, view[Y]-2, Graphics.TOP | Graphics.LEFT);  

          75.           

          76.         if(hasFocus)  

          77.             paintSelect(g);  

          78.     }  

          79.       

          80.        

          81.   

          82.     /** 繪制選擇?? **/  

          83.     private void paintSelect(Graphics g) {  

          84.         g.drawRect(view[X] - 1, view[Y]  - 1,   

          85.                    imageElements[0].getWidth()  + 1,  

          86.                   imageElements[0].getHeight() + 1);  

          87.                    

          88.           

          89.     }  

          90.   

          91.   

          92.     public void onClick(int keyCode) {  

          93.         if(keyCode == Platform.KEY_ENTER   

          94.                 && hasFocus)  

          95.             select = !select;  

          96.   

          97.     }  

          98.   

          99.   

          100.     public boolean isSelect() {  

          101.         return select;  

          102.     }  

          103.   

          104.   

          105.     public void setSelect(boolean select) {  

          106.         this.select = select;  

          107.     }  

          108.   

          109. }  


          posted on 2006-12-30 09:24 路是爬出來(lái)的 閱讀(382) 評(píng)論(0)  編輯  收藏


          只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
          主站蜘蛛池模板: 石渠县| 静安区| 泸溪县| 潍坊市| 班戈县| 西乡县| 高密市| 海口市| 大连市| 察隅县| 依兰县| 黔江区| 兴海县| 肇东市| 武义县| 沅江市| 湄潭县| 甘洛县| 临沭县| 获嘉县| 威海市| 平阳县| 新绛县| 介休市| 凤冈县| 宝清县| 大关县| 舒城县| 靖州| 德保县| 望江县| 美姑县| 喀喇沁旗| 新蔡县| 乃东县| 班玛县| 乾安县| 九江市| 宜城市| 扶风县| 商南县|