当前位置:首页 > Java课程设计实验报告及全部源码流程图
y=(int)((r-15)*Math.sin(RAD*ang)+y0); g.drawString(\ang-=30;
}
//绘制时钟上的12个点 ang=60;
g2D.setStroke(new BasicStroke(1+h/100)); for(int i=1;i<=12;i++){
x=(int)(r*Math.cos(RAD*ang)+x0); y=(int)(r*Math.sin(RAD*ang)+y0); g.drawLine(x,y,x,y); ang-=30; }
//在窗体上显示时间 String st;
if(nowh<10) st=\ if(nows%2==0) st+=\ if(nowm<10) st+=\
g.setFont(new Font(\ g.setColor(new Color(180,180,180,180)); g.drawString(\ g.setColor(Color.BLACK);
g.drawString(st,x0-r*3/2,y0-r+fs/2); //在窗体显示秒数
if(nows<10)
g.setFont(new Font(\Mono\样式常量
g.setColor(new Color(180,180,180,180)); g.drawString(\ g.setColor(Color.BLACK);
g.drawString(st,x0-fs/2,2*r/3+y0);
st=\
else st=\
//显示AM、PM
if(nowh<12) st=\
g.setFont(new Font(\ g.setColor(Color.BLACK);
g.drawString(st,x0-fs/2,y0-2*r/3+3*fs/4); //显示星期
switch (noww) {
g.setFont(new Font(\ g.setColor(Color.BLACK);
g.drawString(st,x0-r*3/2,y0-r+3*fs/2); //计算指针与度数的关系 if(h>=150){ ss=90-nows*6;
mm=90-nowm*6-(0.1*nows); hh=90-nowh*30-nowm/2;
//擦除秒针
g2D.setStroke(new BasicStroke(2f)); if(olds_x>0){
g.setColor(getBackground());
g.drawLine(x0,y0,olds_x,2*y0-olds_y); case 1: st=\case 2: st=\case 3: st=\case 4: st=\case 5: st=\case 6: st=\case 7: st=\
}
} else{
old_m = mm; old_h = hh;
}
//绘制秒针
x=(int)(r*0.9*Math.cos(RAD*ss))+x0; y=(int)(r*0.9*Math.sin(RAD*ss))+y0; g.setColor(Color.BLACK); g.drawLine(x0,y0,x,2*y0-y); olds_x=x; olds_y=y;
g2D.setStroke(new BasicStroke(3f));
//擦除分针 if(old_m!=mm){
g.setColor(getBackground()); g.drawLine(x0,y0,oldm_x,2*y0-oldm_y);
}
//绘制分针
x=(int)(r*0.7*Math.cos(RAD*mm))+x0; y=(int)(r*0.7*Math.sin(RAD*mm))+y0; g.setColor(Color.BLACK); g.drawLine(x0,y0,x,2*y0-y); oldm_x=x; oldm_y=y; old_m=mm;
g2D.setStroke(new BasicStroke(4f)); //擦除时针 if(old_h!=hh){
g.setColor(getBackground());
g.drawLine(x0,y0,oldh_x,2*y0-oldh_y); } //绘制时针
x=(int)(r*0.5*Math.cos(RAD*hh))+x0; y=(int)(r*0.5*Math.sin(RAD*hh))+y0; g.setColor(Color.BLACK); g.drawLine(x0,y0,x,2*y0-y); oldh_x=x;
oldh_y=y; old_h=hh; } } }
这里主要用来画时钟的表盘以及数字时钟的显示。
MyMenuListener1.java
import java.awt.BorderLayout; import java.awt.event.*; import javax.swing.JTextArea;
import javax.swing.event.MenuListener; import javax.swing.event.MenuEvent; import java.awt.*; import javax.swing.*;
import static javax.swing.JFrame.*; import java.io.*;
import java.lang.Exception;
public class MyMenuListener1 implements MenuListener {
static boolean mark;
public void menuCanceled(MenuEvent e) { }
public void menuDeselected(MenuEvent e) {
Test.text1.setEditable(false);
共分享92篇相关文档