我正在开发一个swing应用程序,只是关于JOptionPane.showMessageDialog()
的一个小问题,这让我烦恼:
JOptionPane.showMessageDialog(null, "Record entered successfully");
JOptionPane.showMessageDialog(this, "Record entered successfully");
问题是:在实施 null
作为第一个参数时,我在当前父框架的背景中获取消息,而如果我写 this
作为第一个参数窗口来自父框架。为什么会这样?
答案 0 :(得分:1)
方法
[{MATL_DESC_0=Slug for spiral casing, NS_LEFT_0=2, COMP_UNIT_0=PC, NS_RIGHT_0=3, COMP_QTY_0=1, COMPONENT_0=400-110},
{NS_LEFT_1=4, MATL_DESC_1=Flat gasket, COMP_UNIT_1=PC, NS_RIGHT_1=5, COMP_QTY_1=1, COMPONENT_1=400-120},
{MATL_DESC_2=Hexagon head screw M10, COMP_UNIT_2=PC, COMPONENT_2=400-130, NS_LEFT_2=6, NS_RIGHT_2=7, COMP_QTY_2=8},
{COMPONENT_3=400-140, NS_RIGHT_3=15, NS_CHILD_3=[{COMPONENT_3_child=400-141, NS_RIGHT_3_child=10, NS_LEFT_3_child=9, COMP_QTY_3_child=1, MATL_DESC_3_child=Sensor, COMP_UNIT_3_child=PC},
{COMPONENT_3_child=400-142, NS_RIGHT_3_child=12, NS_LEFT_3_child=11, COMP_QTY_3_child=1, MATL_DESC_3_child=Display, COMP_UNIT_3_child=PC},
{COMPONENT_3_child=400-143, NS_RIGHT_3_child=14, NS_LEFT_3_child=13, COMP_QTY_3_child=1, MATL_DESC_3_child=Casing, COMP_UNIT_3_child=PC}], NS_LEFT_3=8, COMP_QTY_3=1, MATL_DESC_3=Revolution counter, COMP_UNIT_3=PC},
{COMPONENT_4=400-150, NS_LEFT_4=16, NS_RIGHT_4=23, NS_CHILD_4=[{NS_LEFT_4_child=17, COMPONENT_4_child=400-151, MATL_DESC_4_child=Temperature sensor, NS_RIGHT_4_child=18, COMP_QTY_4_child=1, COMP_UNIT_4_child=PC},
{NS_LEFT_4_child=19, COMPONENT_4_child=400-152, MATL_DESC_4_child=Display, NS_RIGHT_4_child=20, COMP_QTY_4_child=1, COMP_UNIT_4_child=PC},
{NS_LEFT_4_child=21, COMPONENT_4_child=400-153, MATL_DESC_4_child=Casing, NS_RIGHT_4_child=22, COMP_QTY_4_child=1, COMP_UNIT_4_child=PC}], COMP_QTY_4=1, MATL_DESC_4=Thermostat, COMP_UNIT_4=PC},
]
第一个参数设置对话框的父级:
为父级
定义要作为此对话框的父级的Component。它以两种方式使用:包含它的Frame用作对话框的Frame父级,其屏幕坐标用于放置对话框。通常,对话框位于组件的正下方。此参数可以是
showMessageDialog(Component parentComponent, Object message)
,在这种情况下,默认的Frame用作父级,对话框将以屏幕为中心(取决于L& F)。
我假设该方法出现在null
类中,在这种情况下,将JFrame
作为参数将父组件设置为该帧。
答案 1 :(得分:0)
使用java关键字this
(在本例中)来引用当前类 - 因此您指的是父窗口。看到这个链接,它非常方便:
http://javapapers.com/core-java/explain-the-java-this-keyword/