2012-08-06 4 views
0

Java OOP가있는 GUI에서 도움이 필요합니다. Eclipse를 사용하고 있습니다.콤보 상자와 JLabel 배열, 그림 함께 묶기

나는 Combobox, JLabel 및 그림으로 "항공사 선택"GUI를 만들고 있습니다.

첫 번째 선택 사항 인 F16 (콤보 박스)에는 $ 600 (JLabel) F16.jpg (콤보 박스 외부)가 추가되었습니다.

그러나 패널 내부

콤보 상자의 JLabel의 나를 도울 수

어떤 사람을 F12.jpg하는 제 2 선택 F22 (콤보)이 JLabel의 자동 $ (900) (JLabel의)를 추가, 변경해야뿐만 아니라 사진을 선택하면서 코딩, 그림

고마워요!

+0

에 오신 것을 환영합니다! 질문에 코드를 추가하면 사람들이 더 쉽게 도움을받을 수 있습니다. 모든 코드를 게시하지 마십시오. [SSCCE] (http://www.mindprod.com/jgloss/sscce.html). –

답변

5

은 기본적으로 당신은 당신의 JComboBox상의 ItemListener를 사용하려면 : StackOverflow의에

 JComboBox box = new JComboBox(); 
     // Adds a listener - this performs an action when the item changes. 
     box.addItemListener(new ItemListener(){ 
      @Override 
      public void itemStateChanged(ItemEvent e) { 
       //Checks if this event was caused because an item was selected 
       if((e.getStateChange() & ItemEvent.SELECTED) == ItemEvent.SELECTED){ 
        System.out.println(e.getItem()); 
        // This is where you'd modify your label based on the dropdown's value - something like this: 
        label.setText("$900"); 
       } 
      }}); 
     panel.add(box); 
+0

고마워, 근데 기본적으로 F16 (콤보 박스) 첫 번째 선택으로 돌아 왔을 때 추가 값이 여전히 $ 900로 남아 있기 때문에 원래 값 $ 600으로 다시 변경하는 코드가 수정 되었기 때문에 더 많은 코드를 조정해야합니까? – user1579414

+0

괜찮아요, 지금은 jlabel과 combobox를 섞을 수있는 코드를 알아 냈습니다.하지만 지금은 그림이 함께 있습니다. 어떤 도움? 감사! – user1579414

+0

함께 링크 된 3 개의 항목이 있다면, 클래스를 만드는 것이 좋습니다 (몇 가지 지침을 보려면 여기를 참조하십시오). http://docs.oracle.com/javase/tutorial/java/concepts/class.html . 더 나은 방법은, 그 클래스의'toString()'함수를 오버라이드 (override) 해, 그것을'JComboBox'의 오브젝트로서 사용할 수 있습니다. 항목이 변경되면'e.getItem()'함수에서 직접 업데이트 된 정보를 얻을 수 있습니다. –

관련 문제