1

我有这个主要的 JFrame(称之为 DrinkChooser),它显示了另一个复杂的确认 JFrame(称之为 ConfirmWin)。

ConfirmWin 只有两个 JButton,确认和取消。

我想做这个:

(在 DrinkChooser 中,假设 DrinksChoosen 是一个 Drink[])

public void handleAction(){
int choice = ConfirmWin.showDrinkConfirmation(drinksChoosen);

if(choice == ConfirmWin.CONFIRM)
//Handle confirmation.
else
//handle cancel, do nothing.
}

我想实现一个尽可能接近“JOptionPane 效果”的效果,即原来的 DrinkChooser 被挂起,ConfirmWin 返回用户的选择。

谢谢。

4

2 回答 2

1

看看如何制作对话框的线索。

Dialog 窗口是一个独立的子窗口,用于在主 Swing 应用程序窗口之外携带临时通知。大多数对话框向用户显示错误消息或警告,但对话框可以显示图像、目录树或与管理它们的主 Swing 应用程序兼容的任何东西。

为方便起见,几个 Swing 组件类可以直接实例化和显示对话框。要创建简单的标准对话框,请使用 JOptionPane 类。

这是一个可能相关的问题:

于 2011-01-30T12:05:10.140 回答
1

不要忘记value所有方法的参数都JOptionPane.showXXXX可以是JComponent. 如果您传递一个组件(在您的示例中,它可能是一个JList带有自定义渲染器的组件),它将嵌入到对话框中,并可用于自定义外观。

于 2011-01-30T21:25:48.780 回答