2015-02-24 7 views
0

Я создал JTextField следующий образом:приращение значения целого числа в JTextArea

int val = 0; 

JTextArea area = new JTextArea(20,15); 
add(new JScrollPane(area), BorderLayout.CENTER); 

Я добавил значение Вала к 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

«НО ЭТО НЕ РАБОТАЕТ». В чем проблема? – CKing

+0

@bot Это не увеличивает значение, которое оно показывает 0 –

ответ

1

Вам нужно разместить Minimal, Complete, and Verifiable example

В то же время, это выглядит как val является переменной экземпляра, так будет оставаться на 0, если не изменить значение самого

val = val + 1; 
area.setText(String.valueOf(val)); 
1

Я думаю, что вы хотите в вашем действии слушателя:

public void actionPerformed(ActionEvent e) { 
    if(e.getActionCommand().equals("Inc")) 
    { 
     int result= Integer.parseInt(area.getText()) + 1; 
     area.setText(String.valueOf(result)); 
    } 
Смежные вопросы