2014-09-18 3 views
0

각 단추에 이미지가있는 단추가 두 개 있습니다. 다른 단추를 클릭하면 이전 단추 두 개가 바뀝니다. 나는 이것을 시도했지만 어떤 종류의 오류가 발생합니다. Plz 도움. 내 코드는 다음과 같습니다다른 단추를 클릭하여 2 개의 단추에 이미지 스왑

당신의 actionPerformed에서
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
class SwapImage implements ActionListener 
{ 
JButton b1; 
JButton b2; 
JButton b3; 
ImageIcon bgi1; 
ImageIcon bgi2; 
ImageIcon bgi3=new ImageIcon(); 

SwapImage() 
{ 
JFrame f=new JFrame("Swap Image"); 

bgi1=new ImageIcon(getClass().getResource("a.png")); 
bgi2=new ImageIcon(getClass().getResource("b.png")); 

b1=new JButton(bgi1); 
b1.setBounds(80,80,100,100); 
//b1.addActionListener(this); 

b2=new JButton(bgi2); 
b2.setBounds(200,80,100,100); 
//b2.addActionListener(this); 

b3=new JButton("SWAP"); 
b3.setBounds(170,230,100,100); 
b3.addActionListener(this); 

f.add(b1); 
f.add(b2); 
f.add(b3); 
f.setSize(400,400); 
f.setLayout(null); 
f.setVisible(true); 

} 

public void actionPerformed(ActionEvent e) 
{ 

bgi3=bgi1; 
bgi1=bgi2; 
bgi2=bgi3; 
b1=new JButton(bgi1); 
b2=new JButton(bgi2); 

} 


public static void main(String s[]) 
{ 
new SwapImage(); 
} 

} 
+0

어떤 종류의 오류는 무엇입니까? – Compass

답변

2

는 호출하지 않습니다

b1=new JButton(bgi1); 
b2=new JButton(bgi2); 

대신에, 단지 설정 아이콘 :

b1.setIcon(bgi1); 
b2.setIcon(bgi2); 
+0

+1 간단한 문제에 대한 설명입니다. – camickr

+0

정말 고마워요 :) :) :) ..... 지금은 너무 행복합니다 ... :) –

+0

@AkshatMalviya 도와 드리겠습니다. 이 솔루션으로 문제가 해결되면 다른 지원자가 이미 답변을 받았음을 알리고 이미 답변이있는 질문을 열거 나 읽지 않아도 사람들의 시간을 절약 할 수 있도록 올바른 것으로 표시해야합니다. – splungebob