dialog = new GameOverDialog(DialogFrame.this);
//因为类GameOverDialog 不是类 DialogFrame 的inner class,所以你不可以这样引用outer class DialogFrame 的referencesolution:
class DialogFrame extends JFrame{
...
class DialogPanel extends JPanel{
...
}}
//因为类GameOverDialog 不是类 DialogFrame 的inner class,所以你不可以这样引用outer class DialogFrame 的referencesolution:
class DialogFrame extends JFrame{
...
class DialogPanel extends JPanel{
...
}}
public class MessageDialog extends JDialog implements ActionListener { public MessageDialog(Frame parent,String title,String message) {
super(parent,title,true);
if(parent!=null){
Dimension parentSize=parent.getSize();
Point p=parent.getLocation();
setLocation(p.x+parentSize.width/4,p.y+parentSize.height/4);
} JPanel messagePane=new JPanel();
messagePane.add(new JLabel(message));
getContentPane().add(messagePane); JPanel buttonPane=new JPanel();
JButton button=new JButton("OK");
buttonPane.add(button);
button.addActionListener(this);
getContentPane().add(buttonPane,BorderLayout.SOUTH);
setDefaultCloseOperation(DISPOSE_ON_CLOSE);
pack();
setVisible(true);
} public void actionPerformed(ActionEvent e){
setVisible(false);
dispose();
}}