2017-10-23 2 views
0

저는 Java 언어에 대해 매우 익숙하며 인터넷을 통해 프로그램을 만들기 시작했습니다. 지금은 이것을 가지고 있습니다 :진행률 막대가 100 % 일 때 JTextArea를 변경하는 방법

package com.butoane; 

import javax.swing.*; 
import java.awt.event.ActionEvent; 
import java.awt.event.ActionListener; 

public class App { 
private JButton apasaAiciButton; 
private JPanel Dunno; 
private JButton apoiaici; 
private JTextArea text1; 
private JProgressBar progressBar1; 
private JTextArea text2; 

public App() { 
    String a = "H"; 
    String b = "e"; 
    String y = "Ce faci sefule??"; 
    final String[] d = {"x"}; 
    final String[] f = {"D"}; 
    final int[] c = {0}; 
    apasaAiciButton.addActionListener(new ActionListener() { 
     @Override 
     public void actionPerformed(ActionEvent e) { 
      //apoiaici.setEnabled(true); 
      //apasaAiciButton.setEnabled(false); 
      text1.append(a); 
      progressBar1.setValue(c[0] +1); 
      c[0] = c[0] +1; 
     } 

    }); 
    apoiaici.addActionListener(new ActionListener() { 
     @Override 
     public void actionPerformed(ActionEvent e) { 
      //apoiaici.setEnabled(false); 
      //apasaAiciButton.setEnabled(true); 
      apasaAiciButton.setText("Apasa iar aici"); 
      text1.append(b); 
      progressBar1.setValue(c[0] +1); 
      c[0] = c[0] +1; 
     } 
    }); 

    } 

public static void main(String[] args) { 
    JFrame frame = new JFrame("App"); 
    frame.setContentPane(new App().Dunno); 
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
    frame.pack(); 
    frame.setVisible(true); 
} 
} 

내가 원하는 것은 진행률 표시 줄이 100 % 일 때 text2에 기능을 추가하는 것입니다. 예 : progressbar1이 100 % 일 때 text2는 텍스트를 "You did it!"으로 설정합니다. . 내가 어떻게 이걸 만들 수 있니?

FYK : JProgressBar 및 JTextArea에 대한 오라클 워드 프로세서를 보았는데 이해할 수 없었습니다.

답변

0

진행률 표시 줄이 작동합니까? 작동하는 경우 추가하십시오.

//the max value of the progress bar == actual value 
if (progressBar1.getMaximum() == progressBar1.getValue() { 
    text2.append("You did it!"); 
} 
0

위젯을 초기화하지 않았기 때문에 코드가 NullPointerException을 throw합니다. 진행률 표시 줄에 청취자 추가 (Java 8 이상을 사용한다고 가정)

progressBar1.addChangeListener(e -> 
{ 
     javax.swing.JProgressBar bar = (javax.swing.JProgressBar)e.getSource(); 
     if(bar.getValue() == 100) 
      text2.setText("You dit it"); 
});