复制代码代码如下 :
패키지 com.wolf.action;
java.awt.borderlayout import;
java.awt.dimension import;
java.awt.toolkit import;
import java.awt.event.actionevent;
import java.awt.event.actionListener;
import javax.swing.jdialog;
import javax.swing.timer;
공개 클래스 데모 확장 타이머 {
개인 정적 최종 최종 긴 SerialversionUID = 2791827603307165823L;
공개 데모 (int arg0, actionlistener arg1) {
슈퍼 (Arg0, arg1);
}
public static void main (String [] args) {
myDialog myDialog = new MyDialog ();
int 높이 = 150;
타이머 획기시기 = 새로운시기 (myDialog);
타이머 타이머 = 새로운 타이머 (0, 타이머);
timer.start ();
for (int i = 0; i <10; i ++) {
노력하다 {
Thread.sleep (100);
} catch (InterruptedException e) {
e.printstacktrace ();
}
높이 = 높이 + 5;
타이머 획기.
}
timer.stop ();
새로운 데모 (1, 타이머);
}
}
클래스 타이머 션은 ActionListener {
개인 myDialog myDialog = null;
개인 int 높이 = 0;
공개 void setheight (int height) {
this.height = 높이;
}
공개시기 (MyDialog myDialog) {
this.mydialog = mydialog;
}
public void actionperformed (ActionEvent 이벤트) {
myDialog.setLocation (((int) myDialog.getScreensize (). getWidth ()) -200,
((int) myDialog.getScreensize (). getheight () -20- 높이);
myDialog.SetSize (New Dimension (200, 높이));
}
}
클래스 myDialog 확장 jdialog {
개인 정적 최종 최종 긴 SerialversionUID = 2791827603307165823L;
개인 치수 Screensize = Toolkit.getDefaultToolKit (). getScreensize ();
public dimension getScreensize () {
반환 스크린 화;
}
public mydialog () {
감독자();
init ();
}
개인 void init () {
this.getContentPane (). setLayout (new BorderLayout ());
this.setLocation (((int) screensize.getWidth ()) -200,
((int) screensize.getheight () -20));
this.set -Visible (true);
this.setDefaultCloseOperation (jdialog.dispose_on_close);
}
}