我创建了一个JTextField,如下所示:
int val = 0;
JTextArea area = new JTextArea(20,15);
add(new JScrollPane(area), BorderLayout.CENTER);
我已将val的值添加到JTextArea:
area.setText(String.valueOf(val));
我创建了一个名为" Inc"的按钮。将val的值递增1并将其显示在JTextArea中但是它不工作。动作监听器如下:
JMenuItem inc = new JMenuItem("Inc");
menu.add(inc);
JMenuItem
inc.addActionListener(this);
@Override
public void actionPerformed(ActionEvent e) {
// TODO Auto-generated method stub
if(e.getActionCommand().equals("Inc"))
{
int result= val + 1;
area.setText(String.valueOf(result));
}
答案 0 :(得分:1)
您需要发布Minimal, Complete, and Verifiable example
与此同时,看起来val
是一个实例变量,因此除非您自己更改值,否则将保留在0
val = val + 1;
area.setText(String.valueOf(val));
答案 1 :(得分:1)
我认为你在动作听众中想要的是:
public void actionPerformed(ActionEvent e) {
if(e.getActionCommand().equals("Inc"))
{
int result= Integer.parseInt(area.getText()) + 1;
area.setText(String.valueOf(result));
}