-
大小: 11KB文件類型: .java金幣: 1下載: 0 次發布日期: 2021-06-12
- 語言: Java
- 標簽:
資源簡介
這是一個完整的純java編寫的模擬windows時鐘日歷的程序,將程序下載下來,打開Eclipse或者能編譯java的工具,新建一個java文件,然后通過記事本打開程序,將程序復制到你的新建的java文件中,這里要注意一點,需要將里面的package 后面指向你的報名,否則將報錯。
代碼片段和文件信息
package?JavaTestFortheen;
import??java.awt.BorderLayout;
import??java.awt.Color;
import??java.awt.Font;
import??java.awt.Graphics;
import??java.awt.event.*;
import??java.awt.GridLayout;
import??java.util.Calendar;
import??java.util.Date;
import??java.util.GregorianCalendar;
import??java.text.SimpleDateFormat;
import?javax.swing.JComboBox;
import??javax.swing.Jframe;
import??javax.swing.JPanel;
import??javax.swing.JTextField;
import??javax.swing.JLabel;
import??javax.swing.SwingUtilities;
import??javax.swing.UIManager;
import?javax.swing.border.titledBorder;
public?class?ClockCalender?extends?Jframe{
public?ClockCalender(){
Draw_Clock?clock?=?new?Draw_Clock();
Calender?cal?=?new?Calender();
@SuppressWarnings(“unused“)
??JPanel?jp2?=?new?JPanel();
setDefaultCloseOperation(Jframe.EXIT_ON_CLOSE);
setSize(560320);
this.setLocationRelativeTo(null);
setVisible(true);
this.setContentPane(clock);
this.getContentPane().add(cal?BorderLayout.EAST);
this.setResizable(false);
}
public?static?void?main(String?args[]){
new?ClockCalender();
}
//鐘表設計
public?class?Clock_Design?extends?JPanel?implements?Runnable{
Thread?thread;//一個新的線程
//啟動時鐘
public?void?start(){
thread?=?new?Thread(this);
thread.start();
}
//停止時鐘
public?void?stop(){
thread?=?null;
}
private?double?CenterXCenterY;
private?double?Radius?=?100;
private?double?HPointXHPointYMPointXMPointYSPointXSPointY;
private?int?Year??MonthDayHourMinuteSecond;
private?String?WeekDay;
private?final?double?PI?=?3.1415926;
public?synchronized?void?paintComponent(Graphics?g)
{
//鐘表的原點
super.paintComponent(g);
CenterX?=?this.getWidth()/2;
CenterY?=?this.getHeight()/2;
//設置鐘表的顏色背景字體
g.setColor(Color.DARK_GRAY);
g.setFont(new?Font(“微軟雅黑“Font.BOLD14));
g.setColor(Color.orange);
g.fillOval((int)(CenterX-Radius)?(int)(CenterY-Radius)?(int)(2*Radius)(int)(2*Radius));?
g.setColor(Color.blue);?//設置表盤顏色
g.fillOval((int)(CenterX-20)(int)(CenterY-20)4040);?//畫表盤
g.setColor(Color.BLACK);//設置字體以及顏色
double?HRadian=(PI/6)*Hour+(PI/360)*Minute+(PI/21600)*Second;
????double?MRadian=(PI/30)*Minute+(PI/1800)*Second;
????double?SRadian=(PI/30)*Second;
????HPointX=CenterX+Radius*0.6*Math.sin(HRadian);
????HPointY=CenterY-Radius*0.6*Math.cos(HRadian);
????MPointX=CenterX+Radius*0.8*Math.sin(MRadian);
????MPointY=CenterY-Radius*0.8*Math.cos(MRadian);
????SPointX=CenterX+Radius*Math.sin(SRadian);
????SPointY=CenterY-Radius*Math.cos(SRadian);
????//鐘表的外面的圈
????g.drawOval((int)(CenterX-Radius)?(int)(CenterY-Radius)?(int)(2*Radius)(int)(2*Radius));//橢圓
???//鐘表的刻度
????g.drawString(“12“(int)(CenterX-10)(int)(CenterY-Radius)+10);//字符串
????g.drawString(“1“(int)(CenterX?+?Radius/2)-6(int)(CenterY?-?(Math.sqrt(3)/2)*Radius)+10);//字符串
????g.drawString(“2“(int)(CenterX?
- 上一篇:人工智能 動物產生式系統 java
- 下一篇:java web實驗報告
評論
共有 條評論