import java.awt.BorderLayout;
import java.awt.Dimension;
import java.awt.Point;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JDialog;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class AboutDialog extends JDialog implements ActionListener{
public AboutDialog(JFrame parent, String title, String message){
super(parent,title,true);
if(parent != null){//只要窗口不为空
Dimension parentSize = parent.getSize();//得到一个尺寸 窗口获得的尺寸
Point p = parent.getLocation();//窗口的位置这个点给p
//设置位置为
setLocation(p.x + parentSize.width/4, p.y + parentSize.height/4);
}
JPanel messagePanel = new JPanel();
messagePanel.add(new JLabel(message));
getContentPane().add(messagePanel);
JPanel buttonPanel = new JPanel();
JButton button = new JButton("OK");
buttonPanel.add(button);
button.addActionListener(this);
getContentPane().add(buttonPanel,BorderLayout.SOUTH);
setLocationRelativeTo(parent);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
pack();
setVisible(true);
}
public static void main(String[] args) {
AboutDialog ad = new AboutDialog(new JFrame(),"title","message");
}
@Override
public void actionPerformed(ActionEvent e) {
setVisible(false);
dispose();//隐藏
}
}