JTextArea显示奇怪的错误消息

时间:2015-10-11 03:50:22

标签: java swing

我已经在互联网上检查了可能导致此错误的原因......但我并不幸运。我的代码基本上从JTextField和JComboBox获取文本,并在用户按下按钮时将其传递给JTextArea。那是代码......

final JTextField quant = new JTextField(3);
final JTextArea list = new JTextArea(10,30);
list.setEditable(false);

JPanel entry = new JPanel();
entry.add(quant);
entry.add(optionProds);
JButton adiciona = new JButton("Adicionar");
entry.add(adiciona);
entry.add(list);
adiciona.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e){
        list.setText(optionProds.getSelectedItem().toString() + "-" + quant);
        System.out.print(list.getText());
    }
});
finalAction.add(entry);

问题在于,当我按下按钮时,JTextArea将不会显示产品名称及其数量,而是显示以下文字:

  

加托-javax.swing.JTextField中[,134,8,37x20,布局= javax.swing.plaf.basic.BasicTextUI中$ UpdateHandler,alignmentX = 0.0,alignmentY = 0.0,边界= javax.swing.plaf.BorderUIResource $ CompoundBorderUIResource @ 2034094f,旗帜= 296,MAXIMUMSIZE =,=的minimumSize,首选大小=,caretColor = sun.swing.PrintColorUIResource [R = 51,G = 51,b = 51],disabledTextColor = javax.swing.plaf.ColorUIResource [R = 184,G = 207,b = 229],可编辑=真,裕度= javax.swing.plaf.InsetsUIResource [顶= 0,左= 0,底部= 0,右= 0],selectedTextColor = sun.swing.PrintColorUIResource [ R = 51,G = 51,b = 51],selectionColor设置= javax.swing.plaf.ColorUIResource [R = 184,G = 207,b = 229],列= 3,columnWidth时= 11,命令=,=的Horizo​​ntalAlignment LEADING ]

导致这种情况的原因是什么?

1 个答案:

答案 0 :(得分:3)

使用

list.setText(optionProds.getSelectedItem().toString() + "-" + quant.getText());

而不是

list.setText(optionProds.getSelectedItem().toString() + "-" + quant);

为什么要打印quant? quant是jtextfiled。这不是错误。这是你打印jcomponent时得到的。当你打印一个jcomponent时,你得到属性和值,如位置,边框,边距......等。所以你应该使用getText()方法

打印文本