java编写抖音超火时钟屏保 swing编写

package package002;

import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JPanel;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;

public class Demo002旋转时钟 extends JFrame{

TranPanel panel;

public static void main(String[] args) {
	
				Demo002旋转时钟 frame = new Demo002旋转时钟();
				frame.setVisible(true);

}

public Demo002旋转时钟() {
	setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	setBounds(300, 5, 1000, 1030);
	panel=new TranPanel();
	setContentPane(panel);
	new Thread(panel).start();
}

}

class TranPanel extends JPanel implements Runnable{

  int h=11;
  int min=59;
  int miao=56;



public void paint(Graphics g)
 {
	
	g.fillOval(500-12, 500-12, 14, 14);
	dynamicClock(g,h,min,miao);	
	
 }


public void dynamicClock(Graphics g,int h,int min,int miao) {	
	drawtime(g,"秒",60,860,6,miao);//画笔   时分秒  循环次数   画的x坐标  旋转角度
	drawtime(g,"分",60,740,6,min);
	drawtime(g,"时",24,620,15,h);	
}


 public void drawtime(Graphics g,String time,int num,int drawx,int angle,int startnum)
 {
	Graphics2D g2 = (Graphics2D)g ;
	
	for(int i=0+startnum;i<=num+startnum;i++) {
		
		Image img = new ImageIcon("E:\\"+time+"\\"+i%num+time+".jpg").getImage();
		g2.translate(500,485);
		g2.rotate(Math.toRadians(angle));
		g2.translate(-500,-485);
		g2.translate(drawx,485);
		g2.drawImage(img,0,0,this) ;
		g2.translate(-drawx,-485);
		
	} 
 }
@Override
public void run() {
	while(true) {
		try {
			Thread.sleep(1000);
			miao+=1;
			if(miao>=60) {
				miao=0;
			    min+=1;
			}
			if(min>=60) {
			    min=0;
			    h+=1;
			}
			if(h>=24) {
			    h=1;
			}
			System.out.println("当前时间:"+h+"时"+min+"分"+miao+"秒");
			repaint();			
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
	
}

}
在这里插入图片描述

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值