<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    千里冰封
    JAVA 濃香四溢
    posts - 151,comments - 2801,trackbacks - 0
    這也是以前寫的一個東西,全屏下運(yùn)行,很像是WINDOWS下的屏保,會顯示時鐘,并且會隨機(jī)自然地碰撞.全屏狀態(tài)下如需退出,請按小鍵盤上的0退出.
    點擊下載可執(zhí)行的JAR文件,JDK1.5以上
    import java.text.*;
    import java.awt.*;
    import javax.swing.*;
    import java.awt.geom.*;
    import java.util.*;
    import java.awt.event.*;
    /*
     * ScreenTest.java
     *
     * Created on 2006年7月6日, 下午5:23
     *
     * To change this template, choose Tools | Template Manager
     * and open the template in the editor.
     
    */

    /**
     *
     * 
    @author lbf
     
    */
    public class ScreenTest extends JPanel implements Runnable{
        
        
    /** Creates a new instance of ScreenTest */
        
    private String time;
        
    private Rectangle2D rd;
        
    private int x,y,a,b;//座標(biāo)值和方向值
        private int rgb=0;//顏色的值
        private Color color;//字體的顏色
        private int width,height;//屏幕的大小
        public ScreenTest(int width,int height) {
            
    this.width=width;
            
    this.height=height;
            initWindow();
        }
        
    private void initWindow(){
            x
    =(int)(Math.random()*300);
            y
    =(int)(Math.random()*500);
            a
    =1;
            b
    =1;
            
    this.setBackground(Color.BLACK);
            
    this.setOpaque(true);
            rd
    =new Rectangle2D.Double(10,10,101,10);
            color
    =Color.YELLOW;
        }
        
    private void doColor(){
           rgb
    =(int)(Math.random()*0xFFFFFF);
               color
    =new Color(rgb);
         }
        
    public void paintComponent(Graphics g){
            g.setColor(Color.BLACK);
            g.fillRect(
    0,0,width,height);
            g.setColor(color);
            g.setFont(
    new Font("楷書",Font.BOLD,150));
            FontMetrics fm
    =g.getFontMetrics();
            rd
    =fm.getStringBounds(time,g);
            g.drawString(time,x,(
    int)(y+rd.getHeight()));
          }
        
    private void doTime(){
            Calendar cal
    =Calendar.getInstance();
            DateFormat df
    =DateFormat.getTimeInstance(DateFormat.MEDIUM);
            Date date
    =cal.getTime();
            time
    =df.format(date);
            x
    +=a;
            y
    +=b;
            
    double width1=rd.getWidth();
            
    double height1=rd.getHeight();
            rd.setRect(x,y,width1,height1);
            
    if(rd.intersectsLine(width,0,width,height)){
                doColor();
                a
    =-1;
            }
            
    else if(rd.intersectsLine(0,0,0,height)){
                doColor();
                a
    =1;
            }
            
    else if(rd.getY()<=-80){
                 doColor();
                 b
    =1;
            }
            
    else if(rd.intersectsLine(0,height,width,height)){
               doColor();
                b
    =-1;
            }
            
        }
        
    public void run(){
            
    while(true){
                
    try{
                    Thread.sleep(
    2);
                    doTime();
                    repaint();
                }
                
    catch(InterruptedException ie){
                    ie.printStackTrace();
                }
            }
        }
       
    public  static void main(String arsg[]){
            
            GraphicsDevice gd
    =GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice();
            DisplayMode dm
    =gd.getDisplayMode();
            
    int width=dm.getWidth();
            
    int height=dm.getHeight();
            System.out.println(
    "width="+width+"\nheight="+height);
            ScreenTest st
    =new ScreenTest(width,height);
            
    final JFrame jf=new JFrame();
            jf.getContentPane().add(st,BorderLayout.CENTER);
            jf.setUndecorated(
    true);
            gd.setFullScreenWindow(jf);
            
    new Thread(st).start();
            jf.addKeyListener(
    new KeyAdapter(){
               
    public void keyReleased(KeyEvent ke){
                   
    if(ke.getKeyCode()==KeyEvent.VK_NUMPAD0)
                       System.exit(
    0);
                    } 
            });
        }
        
    }



    盡管千里冰封
    依然擁有晴空

    你我共同品味JAVA的濃香.
    posted on 2007-09-03 09:18 千里冰封 閱讀(1574) 評論(1)  編輯  收藏 所屬分類: JAVASE

    FeedBack:
    # re: JAVA模仿屏保
    2008-10-25 22:18 | jiangchanghong
    盡管千里冰封
    依然擁有晴空

    你我共同品味JAVA的濃香.   回復(fù)  更多評論
      
    主站蜘蛛池模板: 免费A级毛片av无码| 国产成人免费永久播放视频平台| 亚洲手机中文字幕| 精品剧情v国产在免费线观看| 美女被免费视频网站a| 7777久久亚洲中文字幕| 免费看国产一级特黄aa大片| 波霸在线精品视频免费观看| 亚洲成a人片在线观看播放| 免费一级毛片清高播放| 99久久免费看国产精品| 国产精品成人亚洲| 亚洲VA中文字幕不卡无码| 在线观看免费大黄网站| 亚洲ts人妖网站| 亚洲日本一区二区三区在线不卡| **毛片免费观看久久精品| 免费国产草莓视频在线观看黄| 亚洲一区二区三区电影| 亚洲国产高清精品线久久| 1000部啪啪毛片免费看| 国产精品免费在线播放| 亚洲色精品三区二区一区| 亚洲激情视频在线观看| 亚洲人成无码www久久久| 成年女人男人免费视频播放| 黄网站色视频免费在线观看的a站最新| 亚洲国产欧美国产综合一区| 中文字幕亚洲色图| 国产亚洲精品a在线观看| 日日操夜夜操免费视频| 99在线精品视频观看免费| 国产免费无码一区二区| 欧洲精品码一区二区三区免费看| 亚洲国产精品成人精品软件| 亚洲国产另类久久久精品黑人| 国产一卡二卡≡卡四卡免费乱码| 97在线线免费观看视频在线观看| 久久永久免费人妻精品下载| 黄视频在线观看免费| 免费一区二区无码视频在线播放|