本题的功能是用文本框来设定表盘中指针的位置。窗口中有一个画板和两个文本框,画板中绘制

题型:问答题

问题:

本题的功能是用文本框来设定表盘中指针的位置。窗口中有一个画板和两个文本框,画板中绘制了一个表盘和时针、分针,通过文本框分别设定“时”和“分”,表盘中的时针和分针就会指到对应的位置上。
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import javax.swing.*;
import javax.swing.event.*;
public class java3

public static void main(String[]args)

TextTestFrame frame=new TextTestFrame();
frame.setDefauhCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.show();


class TextTestFrame extends JFrame

public TextTestFrame()

setTitle("java3");
setSize(DEFAULT_WIDTH,DEFAULT_HEIGHT);
Container contentPane=getContentPane();
DocumentListener listener=new DocurnentListener();
JPanel panel=new JPanel();
hourField=new JTextField("12",3);
panel.add(hourField);
hourField.getDocument().addDocumentListener(this);
minuteField=new JTextField("00",3);
panel.add(minuteField);
minuteField.getDocument().addDocumentListener(listener);
contentPane.add(panel,BorderLayout.SOUTH);
clock=new ClockPanel();
contentPane.add(clock,BorderLayout.CENTER);

public void setClock()

try

int hours
=Integer.parseInt(hourField,getText().trim());
int minutes
=Integer.parseInt(minuteField.getText().trim());
clock.setTime(hours,minutes);

catch(NumberFormatException e)

public static final int DEFAULT_WIDTH=300;
public static final int DEFAULT_HEIGHT=300;
private JTextField hourField;
private JTextField minuteField;
private ClockPanel clock;
private class clockFieldListener extends DocumentListener

public void insertUpdate(DocumentEvent e)setClock();
public void removeUpdate(DocumentEvent e)setClock();
public void changedUpdate(DocumentEvent e)

class ClockPanel extends JPanel

public void paintComponent(Graphics g)

super.paintComponent(g);
Graphics2D g2=(Graphics2D)g;
Ellipse2D circle
=new Ellipse2D.Double(0,0,2*RADIUS,2*RADIUS);
g2.draw(circle);
double hourAngle
=Math.toRadians(90-360*minutes/(12*60));
drawHand(g2.hourAngle,HOUR_HAND_LENGTH);
double minuteAngle
=Math.toRadians(90-360*minutes/60);
drawHand(g2,minuteAngle,MINUTE_HAND_LENGTH);

public void drawHand(Graphics2D g2,
double angle,double handLength)

Point2D end=new Poim2D.Double(
RADIUS+handLength*Math.cos(angle),
RADIUS-handLength*Math.sin(angle));
Point2D center=new Point2D.Double(RADIUS,RADIUS);
g2.draw(new Line2D.Double(center,end));

public void setTime(int h,int m)

minutes—h*60+m:
repaint();

private double minutes=0;
private double RADIUS=100;
private double MINUTE_HAND_LENGTH=0.8*RADIUS;
private double HOUR_HAND_LENGTH=0.6*RADIUS;

考点:计算机等级考试JAVA二级JAVA机试
题型:问答题

若3n=2,则33n+2=(    )。

题型:问答题

水平抛出一个物体,从抛出经时间1s后物体速度方向与水平方向夹角为60°,重力加速度为10m/s2,不计空气阻力,则物体的初速度为(  )

A.5

3
m/s 

B.10

3
m/s

C.

10
3
3
m/s

D.5m/s

题型:问答题

面向对象技术中,类属是一种 (30) 机制,一个类属类是关于一组类的一个特性抽象,它强调的是这些类的成员特征中与 (31) 的那些部分,而用变元来表示与 (32) 的那些部分。

(30)处填()。

A.包含多态

B.参数多态

C.过载多态

D.强制多态

题型:问答题

请简述遣唐使在华的主要活动

题型:问答题

整体把握、科学分解、组织综合说明的是管理学的哪个原理?()

A、系统原理

B、整分合原理

C、封闭与开放原理

D、弹性原理

更多题库