2010-12-22 9 views
-1

가능한 중복 확인 :
adding radio buttons and check boxes라디오 버튼 및 상자를

누군가가 토핑을 위해 상자를 맛을 위해 라디오 버튼을 추가하고 확인하는 데 도움 주실 수 있습니까? 제발, 어떤 도움을 주시면 감사하겠습니다. 나는 몇 가지 코드를 추가하지만이

이 솔루션은, 레이아웃 매니저를 사용하는 방법, 당신에게 등 ActionListener를을 만들 컨테이너에 구성 요소를 추가하는 방법을 알아 스윙 튜토리얼을 읽는 것입니다
import javax.swing.*; 

public class menu extends JFrame { 

    public static void main(String[] args) { 
     JFrame frame = new JFrame(); 
     frame.setTitle("Ice Cream"); 
     frame.setSize(300, 170); 
     frame.setLocationRelativeTo(null); 
     frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); 
     JMenuBar menu = new JMenuBar(); 
     frame.setVisible(true); 
     frame.setJMenuBar(menu); 

     JMenu flavors = new JMenu("Flavors"); 
     menu.add(flavors); 

     JMenu toppings = new JMenu("Toppings"); 
     menu.add(toppings); 

     JMenuItem vanilla, chocolate, strawberry; 
     JRadioButtonMenuItem Vanilla = new JRatioButtonMenuItem("Vanilla"); 
     JRadioButtonMenuItem Chocolate = new JRatioButtonMenuItem("Chocolate"); 
     JRadioButtonMenuItem Strawberry = new JRatioButtonMenuItem("Strawberry"); 

     flavors.add(Vanilla); 
     flavors.add(Chocolate); 
     flavors.add(Strawberry); 

     JMenuItem cheese; 
     toppings.add(cheese = new JMenuItem("M&M's")); 
     toppings.add(cheese = new JMenuItem("Cherry")); 
     toppings.add(cheese = new JMenuItem("Whipped cream")); 
    } 
} 
+2

당신은 1-2 일 전에 우리에게 동일한 숙제를 던지려고했는데 사실 코드가 새로운 것을 시도하지 않았다는 것을 보여주는 하나의 비트가 변경되지 않았으므로 어떻게 대답이 달라질 것이라고 기대할 수 있습니까? 다시 답변은 이전과 동일합니다. 적어도 최소한의 노력을 보여주십시오. 나는이 게시물이 닫히고 삭제 될 것이라고 예측하고 이전과 마찬가지로 부정적인 포인트를 얻게 될 것입니다. –

+0

만약 당신이 마지막 하나를 선택했다면, 나는이 부분을 JMenuItem 바닐라, 초콜릿, 딸기가 없다. JRadioButtonMenuItem Vanilla = new JRatioButtonMenuItem ("Vanilla"); JRadioButtonMenuItem Chocolate = new JRatioButtonMenuItem ("Chocolate"); JRadioButtonMenuItem Strawberry = new JRatioButtonMenuItem ("Strawberry"); flavors.add (바닐라); flavors.add (초콜릿); flavors.add (딸기); –

+0

그래서 다음에 읽으면 그걸 바꿨어요 –

답변

3

작동하지 않습니다 여기에 튜토리얼에 대한 링크를 찾을 수 있습니다

Really Big Index

Using Swing Components

Using Top Level Components

Layout Out Components in a Container

How To Use Panels

Using Buttons

How to write an ActionListener

다른 제안 :

주요 방법에 모든 것을 할 것이 아니라 클래스에서 대부분의 작업을하지 마십시오. 주된 메소드는 실제로 매우 짧아야하며,이 상황에서는 클래스를 생성하고 표시하는 코드 만 있으면됩니다.

gui 구성 요소를 배치하는 JPanel (또는 둘 이상)을 가지고 있고이 JPanel을 add (...) 메소드 (실제로는 JFrame의 contentPane에 추가 함)로 JFrame에 추가하십시오. . 이 JPanel의 레이아웃을 다른 유형으로 설정하고 어떤 일이 발생 하는지를보고 다른 레이아웃 관리자를 시험해보십시오. 이 실험이 가장 좋은 학습 방법이라는 것을 알았습니다.

클래스는 JFrame을 확장하지만 아직 JFrame으로 사용하지 않습니다. 나 자신이 수업을 JFrame으로 확장하지 않는 것을 선호하지만 선생님이 선호하는 방식이라면이 방법으로는 아무런 문제가 없습니다. 그렇다면 JFrame으로 클래스를 사용하고 JPanel을 클래스 자체에 추가하십시오. add (...)를 호출하고 JPanel을 클래스 자체 (또는 "this")에 추가하여 클래스의 생성자에서이 작업을 수행 할 수 있습니다.

+2

힌트 : 'Window.pack'은 무엇을하는지 알아보십시오. –