2015-01-25 2 views
0

두 개의 버튼이 있고 두 번째 버튼에는 첫 번째 버튼에서 만든 변수를 사용하고 싶습니다. 그래서 Netbeans은 버튼의 코드를 생성합니다. netbeans에 의해 생성 된 ActionEvent는 "private void buttonActionPerformed (java.awt.event.ActionEvent evt)" 이며 변경할 수 없습니다. 버튼 설정에서 버튼을 공개로 변경하려고했습니다. 공개로 변경했지만 코드에서는 여전히 비공개입니다. 나는 무엇을 해야할지 모른다. 문제가있는 곳이면 누구나 알 수 있습니까? 감사합니다. .Netbeans Swing jButton

+1

코드를 게시하고 오류를 지정하십시오. 변수를 단추 처리기 외부에 만들어야합니다. –

답변

0

당신이하고 싶은 것은 private void buttonActionPerformed(ActionEvent evt) 위의 빈 줄이 그 줄에 변수를 만드는 것입니다. 예 : int a; 이제는 녹색으로 바뀝니다. 클래스 정의를 클릭 두 개의 버튼에 사용에 따라 변수의 값을 변경하고자하는 변수를 선언 그 시간에 시작할 때 이것은 단순히 글로벌 수단으로 선언 전역 변수를

0
JFrame jtfMainFrame; 
    JButton jbnButton1, jbnButton2; 
    JTextField jtfInput; 
    JPanel jplPanel; 
    //Declaring the string variable setText 
    String setText; 
    public JButtonDemo2() { 
     jtfMainFrame = new JFrame("Which Button Demo"); 
     jtfMainFrame.setSize(50, 50); 
     jbnButton1 = new JButton("Button 1"); 
     jbnButton2 = new JButton("Button 2"); 
     jtfInput = new JTextField(20); 
     jplPanel = new JPanel(); 
     jbnButton1.setMnemonic(KeyEvent.VK_I); //Set ShortCut Keys 
     jbnButton2.setMnemonic(KeyEvent.VK_I); 




     jbnButton1.addActionListener(new ActionListener() { 

     public void actionPerformed(ActionEvent e) { 
      //Setting the setText variable 
      setText = "Do whatever you want"; 
     } 
    }); 

    jbnButton2.addActionListener(new ActionListener() { 

     public void actionPerformed(ActionEvent e) { 
      //Displaying the setText variable 
      jtfInput.setText(setText); 
     } 
    }); 





     jplPanel.setLayout(new FlowLayout()); 
     jplPanel.add(jtfInput); 
     jplPanel.add(jbnButton1); 
     jplPanel.add(jbnButton2); 
     jtfMainFrame.getContentPane().add(jplPanel, BorderLayout.CENTER); 
     jtfMainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     jtfMainFrame.pack(); 
     jtfMainFrame.setVisible(true); 
    } 
0

ActionPerformed()을 변경할 필요가 없습니다. 변수를 전역 변수으로 선언 한 다음 버튼의 ActionPerformed() 안에있는 작업을 수행하면됩니다.

관련 문제