0

我想知道为什么我们应该在对话框中写“null”?

str= JOptioPane.showMessageDialog(
                                 parentComponent(null), // <--
                                 messageStringExpression,
                                 boxTitleString,
                                 meeageType);

什么时候我们必须写它?我可以写点别的吗?

谢谢大家

4

2 回答 2

0

为什么我们应该在对话框中写“null”?

如果 parentComponent 是null(aka parentComponent(null)),则 JDialog 不依赖于可见窗口,并且它被放置在与外观相关的位置,例如屏幕中心。

我能写点别的吗

当然,你可以在那里添加任何你想要的组件,比如 JButton,....

一些例子:

private JButton btn_Save;

btn_Save = new JButton(save);
        btn_Save.setText("Save Configuration");
        btn_Save.setBounds(20, 459, 290, 25);
        btn_Save.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent e) {
                if (e.getSource() == btn_Save) {
                    if(saveData()){
                        JOptionPane.showMessageDialog(btn_Save, "Event Configuration saved successfully!");
                    }
                    else{
                        JOptionPane.showMessageDialog(btn_Save, "Failed to save Event Configuration!");
                    }
                }
            }

在这种情况下null,对话框以按钮为中心btn_Save

于 2013-10-11T14:27:47.830 回答
0
JOptionPane.showMessageDialog(parentComponent(null),message);       

然后对话以desktop.

JOptionPane.showMessageDialog(someComponent,message);

然后对话以someComponent

于 2013-10-11T14:29:32.820 回答