2012-11-25 3 views
0

안녕하세요, 로그인 패널을 만들 계획입니다. 이 패널에서 사용자 JLabel, 암호 JLabel, 사용자 JTextField, 암호 JTextField 및 JButon이어야합니다. 이 버튼을 사용하여 새 JPanel로 전환하고 싶습니다.스윙 - 버튼을 사용하여 JPanel을 전환하는 방법

을 : 나는 코드

JComboBox cb = new JComboBox(comboBoxItems); 
cb.setEditable(false); 
cb.addItemListener(this); 
comboBoxPane.add(cb); 
pane.add(comboBoxPane, BorderLayout.PAGE_START); 
pane.add(cards, BorderLayout.CENTER); 

의 일부를 수정하여 변경하기 위해 노력하고있어

//Where the GUI is assembled: 
//Put the JComboBox in a JPanel to get a nicer look. 
JPanel comboBoxPane = new JPanel(); //use FlowLayout 
String comboBoxItems[] = { BUTTONPANEL, TEXTPANEL }; 
JComboBox cb = new JComboBox(comboBoxItems); 
cb.setEditable(false); 
cb.addItemListener(this); 
comboBoxPane.add(cb); 
... 
pane.add(comboBoxPane, BorderLayout.PAGE_START); 
pane.add(cards, BorderLayout.CENTER); 
... 

//Method came from the ItemListener class implementation, 
//contains functionality to process the combo box item selecting 
public void itemStateChanged(ItemEvent evt) { 
    CardLayout cl = (CardLayout)(cards.getLayout()); 
    cl.show(cards, (String)evt.getItem()); 
} 

: 나는 가장 좋은 방법은 CardLayout 내가 그 코드를 수정하기 위해 노력하고있어 읽었습니다 는

JButton loginButton = new JButton(); 
loginButton.addItemListener(this); 
comboBoxPane.add(loginButton); 
pane.add(loginButton, BorderLayout.PAGE_START); 
pane.add(cards, BorderLayout.CENTER); 

내가 사용할 수 없습니다

JButton loginButton = new JButton(comboBoxItems); 

컴파일러에서 오류가 발생하기 때문에 : 생성자 JButton (String [])이 정의되지 않았습니다.

내 문제를 해결하는 데 도움이 될 수 있습니다. Java 프로그래밍에서 초보자입니다

+2

, 당신은 더 나은 몇 가지 기본적인 자바 튜토리얼로 시작합니다. 그냥 인터넷에서 코드를 복사하고 그것이 무엇을 이해하지 않고 약간의 수정을 시도하면 하나의 문제에서 다른 문제로이 끕니다. – Robin

+0

예. 요점을 이해합니다. 자바 기본을 배우고 있습니다. – Karol

답변

3

JButton에는 String 배열을 사용하는 생성자가 없습니다. 호출하기에 충분 :

JButton loginButton = new JButton("Login"); 

참조 : 그 문제가 될 경우 Creating a GUI With JFC/Swing

관련 문제