「java手表编写」java 表

博主:adminadmin 2022-11-24 17:46:06 40

今天给各位分享java手表编写的知识,其中也会对java 表进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java输入时间显示钟表;要求输入一个时分秒,输出一个静态的钟表,显示你输入的时间。

按照你的要求编写的java输入时间显示钟表的程序如下:

import java.awt.BorderLayout;import java.awt.Graphics;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JPanel;

import javax.swing.JTextField;

public class Clock extends JFrame implements ActionListener{ JLabel jl_hour=new JLabel("时");

JLabel jl_minute=new JLabel("分");

JLabel jl_second=new JLabel("秒");

JTextField jtf_hour=new JTextField(10);

JTextField jtf_minute=new JTextField(10);

JTextField jtf_second=new JTextField(10);

JButton jb_input=new JButton("显示");

JPanel jp_input=new JPanel();

ClockPanel jp_clock=new ClockPanel();

Clock(){

super("Clock");

jb_input.addActionListener(this);

jp_input.add(jtf_hour);jp_input.add(jl_hour);

jp_input.add(jtf_minute);jp_input.add(jl_minute);

jp_input.add(jtf_second);jp_input.add(jl_second);

jp_input.add(jb_input);

add(jp_input,BorderLayout.NORTH);

add(jp_clock,BorderLayout.CENTER);

setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

setSize(600,400);

this.setLocationRelativeTo(null);

setVisible(true);

}

public static void main(String[] args) {

new Clock();

}

public void actionPerformed(ActionEvent ae) {

if(ae.getSource()==jb_input){

int Hour=Integer.parseInt(jtf_hour.getText());

int Minute=Integer.parseInt(jtf_minute.getText());

int Second=Integer.parseInt(jtf_second.getText());

jp_clock.setHour(Hour);

jp_clock.setMinute(Minute);

jp_clock.setSecond(Second);

jp_clock.repaint();

}

}

}

class ClockPanel extends JPanel {

private double CenterX,CenterY;

private double Radius=150;

private double HPointX,HPointY,MPointX,MPointY,SPointX,SPointY;

private int Hour,Minute,Second;

private final double PI=3.1415926;

public int getHour() {

return Hour;

}

public void setHour(int hour) {

Hour = hour;

}

public int getMinute() {

return Minute;

}

public void setMinute(int minute) {

Minute = minute;

}

public int getSecond() {

return Second;

}

public void setSecond(int second) {

Second = second;

}

ClockPanel(){

this.Hour=0;

this.Minute=0;

this.Second=0;

}

ClockPanel(int Hour,int Minute,int Second){

this.Hour=Hour;

this.Minute=Minute;

this.Second=Second;

}

public void paintComponent(Graphics g){

super.paintComponent(g);

CenterX=this.getWidth()/2;

CenterY=this.getHeight()/2;

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),(int)(CenterY-Radius)+10);

g.drawString("3",(int)(CenterX+Radius)-6 , (int)(CenterY));

g.drawString("6", (int)(CenterX), (int)(CenterY+Radius));

g.drawString("9",(int)(CenterX-Radius), (int)(CenterY));

g.drawLine((int)(CenterX), (int)(CenterY), (int)(SPointX), (int)(SPointY));

g.drawLine((int)(CenterX), (int)(CenterY), (int)(MPointX), (int)(MPointY));

g.drawLine((int)(CenterX), (int)(CenterY), (int)(HPointX), (int)(HPointY));

}

}

用java编程逐行输出 钟表一天内三指针重合时间,精确的秒

long base=new GregorianCalendar(0,0,0,0,0,0).getTime().getTime(); 定义一个0毫秒的基数,为了后面使用format做准备。

DateFormat df=new SimpleDateFormat("HH:mm:ss"); 设置格式化的样式

for循环是安装一天时间长度的总共有60*60*12*2秒(这个因为要精确到秒),在每个秒长度时间上,分别获得时针、分钟和秒针所在表盘的位置(表盘整个圆是60秒)。

然会判断三个针位置是否是一样的,如果一样就输入该时间。

怎样用java制作一个钟表类?

public class Horologe{

private int hour;

private int minute;

private int second;

public void setTime(int hour,int minute,int second){ //设置时间的方法

this.hour = hour; //传进的参数赋值给成员变量

this.minute = minute;

this.second = second;

}

public String showTime(){ //显示时间的方法

return "小时:"+hour+" 分钟:"+minute+" 秒: "+second;

}

}

希望能够帮到你

java手表编写的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java 表、java手表编写的信息别忘了在本站进行查找喔。

The End

发布于:2022-11-24,除非注明,否则均为首码项目网原创文章,转载请注明出处。