资源简介
此资源是一个用JAVA编制的时钟程序,此压缩包包含有java和word文件各一个,可实现当前时间的数字式和表盘式显示,用户可根据自己的需求对窗口数值进行修改,以达到自身的需求。
代码片段和文件信息
import java.awt.BasicStroke;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Calendar;
import java.util.GregorianCalendar;
import javax.swing.*;
public class rw23 extends Jframe implements ActionListener{
int xyx_1y_1rhss_xss_ymm_xmm_yhh_xhh_yssmmhhold_mold_hang;
final double RAD =Math.PI/180;//度数转换成弧度的比例
//构造函数创建了一个窗体
public static void main(String[] args) {
// TODO Auto-generated method stub
rw23 cd=new rw23();
System.out.println(“JAVA小时钟已成功显示!“);
}
public rw23() {
super(“JAVA 小时钟“);
setDefaultCloseOperation(3);
Image image =getToolkit().getImage(“1.jpg“);
setIconImage(image);
setSize(500500);
setBackground(Color.black);
setLocation(300150);
setResizable(false);
setVisible(true);
show();
int delay =1000;
ActionListener draw =new ActionListener() {//创建一个监听事件
public void actionPerformed(ActionEvent evt) {
repaint();
}
};
new Timer(delaydraw).start();//创建一个时间计数器,每一秒触发一次
}
//实现ActionListener接口必须实现的方法
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
}
public void paint(Graphics g) {
//绘制图形
Graphics2D g2D=(Graphics2D) g;//Graphics强制类型转换成Graphics2D
Insets insets =getInsets();//创建Jframe的边界对象
int L=insets.left/2T=insets.top/2;//L=左边界的2/1,T=上边界的2/1
h =getSize().height;//返回Jframe的高度
g.setColor(new Color(1157418));//设置画笔颜色为棕色
//画圆
g2D.setStroke(new BasicStroke(5.0f));//勾画出宽度为4cm的圆
g.drawOval(L+40T+40h-80h-80);//
r=h/2-40;
x_1=40+r-5+L;
y_1=40+r-5-T;
ang=60;
//绘制时钟上的12个字
g.setFont(new Font(““Font.BOLD12));
g.setColor(new Color(255255255));
for(int i=1;i<=12;i++) {
x=(int)((r+12)*Math.cos(RAD * ang)+x_1);
y=(int)((r+12)*Math.sin(RAD * ang)+y_1);
g.drawString(““+ ix h-y);
ang -=30;
}
//获得现在的时间
Calendar now=new GregorianCalendar();//创建Calender对象now
int hour=now.get(Calendar.HOUR_OF_DAY);//取得当前的小时部分
int minute=now.get(Calendar.MINUTE);//取得当前时间的分钟部分
int second =now.get(Calendar.SECOND);//取得当前时间的秒
String st;
if(hour<10)
st=“0“+hour;
else
st=““+hour;
if(minute<10)
st+=“:0“+minute;
else
st +=“:“+minute;
if(second<10)
st+=“:0“+second;
else
st +=“:“+second;
//窗体上显示时间格式,如00:00:00
g.setColor(Color.pink);
g.fillRect(L T 90 40);//画出宽为60像素,高为30像素的矩形,颜色为粉色
g.setColor(Color.yellow);
g.drawString(st L+14 T+30);//将上面组合的字符串st画出,颜色为黄色
//计算时间与度数的关系
ss=90-second*6;
mm=90-minute*6;
hh=90-hour*30-minute/2;
x_1=r+40+L;
y_1=r+40+T;
g2D.setStroke(new BasicStroke(1.0f));//设置秒针的宽度
if(ss_x>0) {//擦除秒针原理为改变为原来的背景颜色
g.setColor(getBackground());
g.drawLine(x_1 y_1 ss_x h-ss_y);
}else {
old_m = mm;
old_h = hh;
}
//绘制秒针
x=(int)(r*0.9*Math.cos(RAD*ss))+x_1;
y=(int)(r*0.9*Math.sin(RAD*ss))+y_1-2*T;
g.setColor(new Color(2559971));
g.drawLine(x_1 y_1 x h-y)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 15459 2018-09-23 21:33 JAVA时钟\JAVA时钟.docx
文件 4033 2018-09-20 15:22 JAVA时钟\rw23.java
目录 0 2018-09-23 21:33 JAVA时钟
----------- --------- ---------- ----- ----
19492 3
- 上一篇:Java虚拟机视频.rar
- 下一篇:JAVA运用多线程实现碰撞的小球
相关资源
- JAVA运用多线程实现碰撞的小球
- Java虚拟机视频.rar
- java串口监听所有驱动包
- java写的单位转换,包括长度,重量,
- Java并发编程实践 mobi
- kerberos java system
- 蓝桥杯历年真题解析视频讲解javaB组
- ZB转GB输入法
- JavaWeb答辩问题
- 计算机毕业实习报告java方面
- java在线升级代码
- java单例模式连接数据库源码
- Java程序入门日文版
- Java中基于UDP的图像传输与显示(Swi
- apriori算法java实现源代码
- JAva+sql的网上购书系统
- 学生课绩管理系统 - Java源码
-
eclipse-java-google-st
yle - java socket 简单成绩管理系统
- Android手机版Java五子棋源代码【源代码
- 《剑指Offer》题目及java代码实现
- Java版泡泡龙游戏(源代码)
- protobuf-2.5.0 exe文件
- 基于用户的协同过滤JAVA
- TIFF图片压缩工具
- Java源代码保护工具ProGuard的3.6与4.1版
- java 利用Kmeans的jar包进行聚类---代码
- java海量数据读写优化方案
- 神经网络算法与实现 ——基于Java语言
- java编写的简单手机通讯录
评论
共有 条评论