复制代码代码如下::
Paket com.wolf.Action;
Import Java.awt.BorderLayout;
Import Java.awt.Dimension;
import Java.awt.toolkit;
import Java.awt.event.ActionEvent;
import Java.awt.event.ActionListener;
import Javax.swing.jdialog;
import Javax.swing.timer;
Die Demo der öffentlichen Klasse erweitert Timer {
Private statische endgültige lange Serialversionuid = 2791827603307165823L;
öffentliche Demo (int arg0, actionListener arg1) {
Super (arg0, arg1);
}
public static void main (String [] args) {
Mydialog mydialog = new MyDialog ();
int Höhe = 150;
TimerAction TimerAction = New TimerAction (MyDialog);
Timer Timer = New Timer (0, TimerAction);
Timer.Start ();
für (int i = 0; i <10; i ++) {
versuchen {
Thread.Sleep (100);
} catch (InterruptedException e) {
E. printstacktrace ();
}
Höhe = Höhe + 5;
timerAction.seteight (Höhe);
}
Timer.Stop ();
neue Demo (1, TimerAction);
}
}
Klassen TimerAction implementiert ActionListener {
privat mydialog mydialog = null;
Private int Höhe = 0;
public void Seteight (int Höhe) {
this.height = Höhe;
}
öffentliche Timeraktion (mydialog mydialog) {
this.mydialog = mydialog;
}
public void actionperformed (actionEvent event) {
mydialog.setLocation (((int) mydialog.getScreensize (). Getwidth ()) - 200,,
((int) myDialog.getScreenSize (). Geteight () - 20 - Höhe));
MyDialog.Setsize (neue Dimension (200, Höhe));
}
}
Klasse mydialog erweitert JDialog {
Private statische endgültige lange Serialversionuid = 2791827603307165823L;
private Dimension ScreenSize = Toolkit.getDefaulttoolkit (). GetCreenSize ();
öffentliche Dimension getCreenSize () {
Return -Bildschirme;
}
public mydialog () {
super();
init ();
}
private void init () {
this.getContentPane (). setLayout (new BorderLayout ());
this.setLocation (((int) screenSize.getWidth ()) - 200,,
((int) screenSize.getheight () - 20));
this.setvisible (true);
this.setDefaultCloseOperation (jdialog.dispose_on_close);
}
}