JOptionPane
制作了自定义JSlider
。它完成它应该做的,但我如何检查按下确定或取消?因为现在无论如何都会这样做。
代码:
JOptionPane optionPane = new JOptionPane();
JSlider slider = getSlider(optionPane);
slider.setValue(value);
optionPane.setMessage(new Object[]{"Select a value: ", slider});
optionPane.setMessageType(JOptionPane.QUESTION_MESSAGE);
optionPane.setOptionType(JOptionPane.OK_CANCEL_OPTION);
optionPane.createDialog(parent, title).setVisible(true);
// get return value of optionPane
我已经完成了这些方法,并没有找到它,这并不意味着;但是,它不存在。
任何帮助表示赞赏。谢谢!
答案 0 :(得分:2)
documentation为您创建对话框的方式提供了一个很好的示例。
文档的简短摘要:
JDialog dialog = pane.createDialog(parentComponent, title);
dialog.show();
Object selectedValue = pane.getValue();
if(selectedValue == null)
return CLOSED_OPTION;
//If there is not an array of option buttons:
if(options == null) {
if(selectedValue instanceof Integer)
return ((Integer)selectedValue).intValue();
return CLOSED_OPTION;
}
在您pane.getValue()
对话框后,show()
看起来会产生结果值。
您可能希望重新构建代码,以使用this related question中所述的更易于使用的showOptionDialog
方法。