单击按钮后如何在面板中显示信息?

时间:2016-02-15 00:01:00

标签: java swing jpanel

我正在开发一个接受披萨订单的应用程序。用户单击订单摘要按钮后,程序将显示订单摘要。该应用程序如下所示:enter image description here

我想在一个像JTextArea这样的新刑法中打印出订单摘要(只是没有错误):

enter image description here

但我不知道怎么做。这就是我的应用程序现在显示的内容:enter image description here

以下是与显示相关的代码:

        orderSummary = "Customer Name: " + name +
                       "\nPhone Number: " + phoneNumber +
                       "\nSize: " + size +
                       "\nToppings: " + toppings +
                       "\nTotal: $" + total;
        if(error) 
            JOptionPane.showMessageDialog(null, ErrorString);
        else
            JOptionPane.showMessageDialog(null, orderSummary);

错误显示:

enter image description here

1 个答案:

答案 0 :(得分:2)

我不是100%肯定你在问什么,但是如果你正在寻找一个弹出对话框(不仅仅是一个面板),那么你可以尝试类似的东西:

    JDialog zMessageDialog = new JDialog((java.awt.Frame) null, true);
    zMessageDialog.setTitle("Order summary");
    zMessageDialog.setLayout(new BorderLayout());
    JTextArea zTextArea = new JTextArea("Blah blah\nblah blah\nblah blah");
    zTextArea.setEditable(false);
    zTextArea.setColumns(40);
    zTextArea.setRows(10);
    zTextArea.setBackground(null);
    JScrollPane zScrollPane = new JScrollPane(zTextArea);
    zMessageDialog.add(zScrollPane, BorderLayout.CENTER);
    zMessageDialog.revalidate();
    zMessageDialog.pack();
    zMessageDialog.setVisible(true);

这只是将JTextArea放在JDialog中。它使JTextArea不可编辑,并将其背景颜色设置为null(这使得它看起来不太可编辑)。

当然,这可能不是用户界面方面的最佳方式,但这是一个不同的问题。如果您使用的是像Netbeans这样的IDE,您可以轻松地创建一个基于JDialog的单独类,并在底部添加一个" OK"按钮,以及您想要的任何其他自定义。