Java swing:JPanel与模态/非模态对话框?

Java swing:JPanel与模态/非模态对话框?,java,swing,jpanel,jdialog,Java,Swing,Jpanel,Jdialog,我想在库中实现一些功能,并将其作为应用程序的GUI构建块提供。我想我想把它实现为扩展JPanel,这样它就可以作为一个组件嵌入到其他窗口中 是否有理由改用JDialog?创建JDialog并显示JPanel以及最小的其他适当组件有多容易?(例如,对于非模态对话框,只有一个边框/关闭框/等;对于模态对话框,相同+确定/取消)仅当需要对话框时,才应扩展JDialog;如果只需要一个可在其他窗口或框架中使用的面板,则应扩展JPanel 是的,创建一个JDialog很容易,它只包含一个带有边框、clos

我想在库中实现一些功能,并将其作为应用程序的GUI构建块提供。我想我想把它实现为扩展
JPanel
,这样它就可以作为一个组件嵌入到其他窗口中

是否有理由改用
JDialog
?创建
JDialog
并显示
JPanel
以及最小的其他适当组件有多容易?(例如,对于非模态对话框,只有一个边框/关闭框/等;对于模态对话框,相同+确定/取消)

仅当需要对话框时,才应扩展JDialog;如果只需要一个可在其他窗口或框架中使用的面板,则应扩展JPanel

是的,创建一个JDialog很容易,它只包含一个带有边框、closebox和OK/Cancel(模式和非模式)的JPanel


看一看

我会把它做成一个
JPanel
。这样,如果希望将其作为独立组件运行,您可以在其他组件中重用它,或者将其放入
JFrame
(通过调用
setContentPane
)中。您需要
JDialog
的唯一原因是,如果您想使组件成为模态