스윙에서 CardLayout 이 잘 안되네요..
다빈
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;public class CardTest extends JFrame implements ActionListener
{
private JPanel mp1 = new JPanel();
private JPanel mp2 = new JPanel();
private JLabel jL1 = new JLabel(패널1);
private JLabel jL2 = new JLabel(패널2);
private JButton b = new JButton(확인);
private CardLayout card = new CardLayout();public CardTest() {
mp1.add(jL1);
mp2.add(jL2);
mp1.add(b);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setLayout(card);
this.add(mp1, mp1);
this.add(mp2, mp2);
b.addActionListener(this);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e) {
try
{
card.show(this, mp2);
}
catch (Exception ee)
{
ee.printStackTrace();
}
}public static void main(String[] args) {
CardTest f = new CardTest();
f.setSize(200,200);
}
}급조로 만든 테스트용 코드 입니다.
버튼을 누르면 패널이 바껴야 되는데 예외가 발생..
이유가 뭘까요?
-
좍좍
어라 getContentPane()으로 컨테이너 얻어서 해야 되네..
1.5부터는 걍써도 됐었는데.. 튜토리얼에서 나온건 완전히 다른방식이고....-_- -
아메
아직 스윙않배워서 통과.. 빨리배우고 나도 공부해야지 ㅋㅋ
-
물
헐...
스윙에서는 방식이 바겼더군요
튜토리얼에서 찾았습니다 .--; -
하늘이
혹시나해서 awt로 해보니까 되더군요 -_-;;
스윙도 되는걸로 알고 있는데...