자바 스윙 동적 증가 컨트롤

1137 단어
    class dynmaicBtnListener implements java.awt.event.ActionListener{

        @Override
        public void actionPerformed(ActionEvent e) {
           System.out.println("new button clicked.");
        }
        
    }
    private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {                                         
        CenterViewPanel.setLayout(new BoxLayout(CenterViewPanel, BoxLayout.Y_AXIS));
        JButton newbtn = new JButton("MyDynamicButton");
        newbtn.addActionListener(new dynmaicBtnListener ());
        CenterViewPanel.add(newbtn);
//        CenterViewPanel.validate(); 
//        CenterViewPanel.repaint(); 
        CenterViewPanel.revalidate(); 
    }    

위의 코드 를 사용 하면 컨트롤 을 동적 으로 증가 시 킬 수 있 습 니 다.
4. 567913. 컨트롤 을 동적 으로 추가 할 때 add 전에 layot 설정 방법 을 호출 해 야 합 니 다.안 그러면 효과 없어.
 CenterViewPanel.setLayout(new BoxLayout(CenterViewPanel, BoxLayout.Y_AXIS));
add 다음 호출
        CenterViewPanel.validate();          CenterViewPanel.repaint(); 
혹시        CenterViewPanel.revalidate();
다시 그리 기 컨트롤 을 새로 고 칩 니 다.

좋은 웹페이지 즐겨찾기