📄 beantest.java
字号:
package TimerBean;import java.util.*;import java.awt.*;import java.text.*;import java.util.*;import java.awt.event.*;import java.applet.*;import java.util.Locale;/* BeanTest实现了TimerListener接口,因此它可以作为 * Timer事件的监听者,同时,它也实现了MouseListener接口, * 因此可以响应鼠标单击事件 */public class BeanTest extends Applet implements TimerListener, MouseListener { //将TimerBean作为Applet的成员对象 TimerBean tBean; //定义一个按钮,单击该按钮可以加长时间间隔 Button slowB; //定义一个按钮,单击该按钮可以缩短时间间隔 Button quickB; //定义一个按钮,单击该按钮可以启动线程执行 Button startB; //定义一个按钮,单价该按钮可以停止线程执行 Button stopB; //该文本域显示Timer事件对象发送的Date值,从而反映出TimerBean执行的结构 TextArea t; public void init() { setLayout(new BorderLayout()); //构造一个TimerBean tBean = new TimerBean(); //将BeanTest注册为TimerBean的Timer事件 tBean.addTimerListener(this); //构造slowB按钮,并将BeanTest注册为该按钮的单击事件的监听者 slowB = new Button("slower"); slowB.addMouseListener(this); slowB.setEnabled(false); //构造quikB按钮,并将BeanTest注册为该按钮的单击事件的监听者 quickB = new Button("quiker"); quickB.addMouseListener(this); quickB.setEnabled(false); //构造startB按钮,并将BeanTest注册为该按钮的单击事件的监听者 startB = new Button("start"); startB.addMouseListener(this); //构造stopB按钮,并将BeanTest注册为该按钮的单击事件的监听者 stopB = new Button("stop"); stopB.addMouseListener(this); t = new TextArea("", 5,10, TextArea.SCROLLBARS_NONE); add("Center", t); add("North", slowB); add("South", quickB); add("East", startB); add("West",stopB); } public void destory() { remove(startB); remove(stopB); remove(slowB); remove(quickB); } public void mousePressed(MouseEvent e) { //如果单击start按钮,则启动TimerBean的执行 if (e.getSource() == startB) { tBean.setContinue(true); quickB.setEnabled(true); slowB.setEnabled(true); } else if (e.getSource() == stopB) { //如果打击stop按钮,则中止TimerBean的执行 tBean.setContinue(false); quickB.setEnabled(false); slowB.setEnabled(false); } else if (e.getSource() == slowB) { //如果打击slowB按钮,则延长TimerBean的时间间隔属性值 tBean.setInterval(tBean.getInterval()*(int)2); } else if (e.getSource() == quickB) { //如果单击quickB按钮,则速断TimerBean的时间间隔属性值 tBean.setInterval(tBean.getInterval()/(int)2); } } public void mouseReleased(MouseEvent e) {} public void mouseEntered(MouseEvent e) {} public void mouseExited(MouseEvent e) {} public void mouseClicked(MouseEvent e) {} /*实现TimerEventListener所定义的方法,将TimerEvent所发送的新的 当前值显示在TextArea上*/ public void timeElapsed(TimerEvent evt) { SimpleDateFormat formatter = new SimpleDateFormat("EEE MMM dd hh:mm:ss yyyy", Locale.getDefault()); String now = formatter.format(evt.getDate()); t.setFont(new Font("Monospaced", Font.BOLD,30)); t.setText(now); } public static void main(String args[]) { Frame f = new Frame("BeanTest"); BeanTest bt = new BeanTest(); bt.init(); bt.start(); f.add("Center",bt); f.setSize(300,300); f.show(); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -