Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/329.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用java创建弹出窗口_Java_Swing_Jtable_Jlist - Fatal编程技术网

如何使用java创建弹出窗口

如何使用java创建弹出窗口,java,swing,jtable,jlist,Java,Swing,Jtable,Jlist,我想要一个按钮来显示弹出窗口,我试着使用 JOptionPane.showMessageDialog(null,""); 但是我不能放置我想要的对象,例如表和列表。有可能吗?首先仔细查看,清楚地表明它接受对象作为消息参数 其中一个很好的特性是,如果对象是组件,它将被添加到对话框中 例如:和首先仔细查看,清楚地表明它接受对象作为消息参数 其中一个很好的特性是,如果对象是组件,它将被添加到对话框中 例如:和这在中的记录非常糟糕,因为所有这些都告诉您“message”参数是一个对象,可以是任何对象-

我想要一个按钮来显示弹出窗口,我试着使用

JOptionPane.showMessageDialog(null,"");

但是我不能放置我想要的对象,例如表和列表。有可能吗?

首先仔细查看,清楚地表明它接受
对象作为消息参数

其中一个很好的特性是,如果
对象
组件
,它将被添加到对话框中


例如:和

首先仔细查看,清楚地表明它接受
对象
作为消息参数

其中一个很好的特性是,如果
对象
组件
,它将被添加到对话框中


例如:和

这在中的记录非常糟糕,因为所有这些都告诉您“message”参数是一个对象,可以是任何对象-但没有详细说明不同类型的对象会发生什么情况,这可能需要特殊的案例处理

据我从实验中收集到的信息,“消息”可以是组件的一个子类型,然后它会将组件按原样放置在对话框的消息区域中,如下所示:

JOptionPane.showMessageDialog(null, new JCheckBox("I'm a checkbox!"));
否则,它将只调用对象上的toString方法,将其转换为字符串,然后将其包装在标签中,并将其作为消息放置在对话框中

但您也可以传入一个对象数组,在这种情况下,它只会将每个元素放在消息区域中的一个单独的行中:

JOptionPane.showMessageDialog(null, new Object[] {
    new JCheckBox("check"),
    new JRadioButton("radio"),
    "plain text"});
可能还有其他特殊情况,但我还没有找到


也就是说,如果要显示的是Component(或JComponent)的子类,只需将其作为消息参数传入即可。如果没有,您可能希望编辑您的问题,以更详细地描述遇到的任何问题,也许还提供一些示例代码。

这在中的文档记录得很差,因为所有这些都告诉您“message”参数是一个对象,它可以是任何东西,但没有详细说明不同类型的对象会发生什么,可能需要特殊的案例处理

据我从实验中收集到的信息,“消息”可以是组件的一个子类型,然后它会将组件按原样放置在对话框的消息区域中,如下所示:

JOptionPane.showMessageDialog(null, new JCheckBox("I'm a checkbox!"));
否则,它将只调用对象上的toString方法,将其转换为字符串,然后将其包装在标签中,并将其作为消息放置在对话框中

但您也可以传入一个对象数组,在这种情况下,它只会将每个元素放在消息区域中的一个单独的行中:

JOptionPane.showMessageDialog(null, new Object[] {
    new JCheckBox("check"),
    new JRadioButton("radio"),
    "plain text"});
可能还有其他特殊情况,但我还没有找到


也就是说,如果要显示的是Component(或JComponent)的子类,只需将其作为消息参数传入即可。如果没有,您可能希望编辑您的问题,以更详细地描述遇到的任何问题,也许还提供一些示例代码。

JOptionPane
+&.
JOptionPane
+&。我不知道该数组行为。好电话!:-D@peeskillet:这就是为什么JOptionPane的文档非常非常糟糕的原因,如果您只能通过尝试和错误来发现这些功能的话……我总是在那里扔一个面板(带组件);-)@AndreasBaus哇,这真的帮了大忙,谢谢你花时间回答我的问题:D@peeskillet: ... 如果你想控制组件的布局,你仍然需要这样做:)我不知道数组的行为。好电话!:-D@peeskillet:这就是为什么JOptionPane的文档非常非常糟糕的原因,如果您只能通过尝试和错误来发现这些功能的话……我总是在那里扔一个面板(带组件);-)@AndreasBaus哇,这真的帮了大忙,谢谢你花时间回答我的问题:D@peeskillet: ... 如果您想控制组件的布局,您仍然必须这样做:)