我有一个扩展JFrame来创建订单的类。 在中间我有一个按钮,打开一个用于查找文章的新窗口。
我需要的是: 当我点击btnNewArticle,搜索新文章后,在新窗口中确认后,我将获得返回文章代码。
点击btnNewArticle - > (打开新窗口查找文章) - >确认选择 - >作为回报我得到商品代码。
有可能吗?
由于
答案 0 :(得分:1)
查看Java对话框:How to Make Dialogs。
在上面的教程中,他们解释了如何进行自定义对话框,如下所示:
http://download.oracle.com/javase/tutorial/figures/uiswing/components/CustomizedDialog2Metal.png
它们通过为子对话框提供对其父对话框的引用来处理返回值,在对话框中,它在关闭时填充相关值。
答案 1 :(得分:0)
对我来说,这个原则有效:
public class ArticleSearchDialog extends JDialog {
public static ArticleId execute(Frame parent) {
ArticleSearchDialog dialog = new ArticleSearchDialog(parent, true);
dialog.setVisible(true);
return dialog.getSelectedArticle();
}
private ArticleId getSelectedArticle() {
return selectedArticle;
}
private void jbCancelActionPerformed(ActionEvent evt) {
selectedArticle = null;
setVisible(false);
dispose();
}
private void jbOkActionPerformed(ActionEvent evt) {
selectedArticle = ...; //TODO
setVisible(false);
dispose();
}
// All the rest of the dialog code.
}
然后电话变得非常简单:
ArticleId articleId = ArticleSearchDialog.execute(this);
if (articleId != null) {
//TODO
}