2012-11-22 1 views
2

나는 작은 시험을 수행 한 두 번째 시험에서 I (0 대신 1의) 주장의 오류 얻을 :JMenu에 추가 된 구성 요소 수를 검색하는 방법은 무엇입니까?

package tests; 

import static org.junit.Assert.*; 
import org.junit.Test; 
import javax.swing.*; 

public class MenuTest { 

    @Test 
    public void testElementsAddition() { 
     JMenuItem mItem1 = new JMenuItem(); 
     JMenuItem mItem2 = new JMenuItem(); 
     JMenu menu = new JMenu(); 

     mItem1.add(mItem2); 
     assertEquals(1, mItem1.getComponentCount()); 

     menu.add(mItem1); 
     assertEquals(1, menu.getComponentCount()); 
    } 
} 

어떤 아이디어 왜 이런 일이 수를?

답변

3

메뉴 항목이 실제로 JMenu에 추가되지는 않지만 팝업 메뉴에 내부적으로 추가되기 때문에 발생합니다. 메뉴에는 아무 것도 추가되지 않습니다.

난 당신이 이 바람직 "구분을 포함하여 메뉴에서 항목의 수를 돌려"또는 JMenu#getItemCount, JMenu#getMenuComponentCount

+0

감사를 사용하려는 생각, 나는 이러한 메커니즘을 통해 온 적이 없어요. –

관련 문제