未分类题
请完成下列Java程序:用一个边框布局来安排一个工具栏和一个卡片布局。工具栏可浮动,包括两个按钮,一个向前一个向后控制卡片的显示;卡片布局包括3张卡片,分别标识为card1、card2、card3。
注意;请勿改动main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。
源程序代码文件清单如下:
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.border.LineBorder;
public class ex20_2
{
private static CardLayout cl=new CardLayout();
private static JPanel cp=new JPanel();
public static void main(String args[])
{
JFrame. jf=new JFrame();
jf.setTitle('ex20_2');
Container c=jf.getContentPane();
JToolBar jtb=new JToolBar();
JButton btnNext=new JButton(new Imagelcon('next.gif'));
JButton btnPre=new JButton(new ImageIcon('back.gif'));
jtb.add(btnPre);
jtb.add(btnNext);
cp.setLayout(c1);
Dimension dim=new Dimension(150,80);
cp.setPreferredSize(dim);
cp.setBorder(new LineBorder(Color.BLACK));
cp.add(new JLabel('card1',JLabel.CENTER),'card1');
cp.add(new JLabel('card2',JLabel.CENTER),'card2');
cp.add(new JLabel('card3',JLabel.CENTER),'card3');
c.add(jtb,BorderLayout.NORTH);
c.add(cp,BorderLayout.CENTER);
ActionListener al=new ActionResponse();
______;
______;
if.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent we)
{
System.exit(0);
}
});
jf.pack();
jf.setVisible(true);
}
static class ActionResponse implements ActionListener
{
public void actionPerformed(ActionEvent ae)
{
if(ae.getActionCommand().equals('next'))
c1.next(cp);
else
c1.previous(cp);
}
}
}
A.awt.*;
B.awt.event.*;
C.swing.*;
D.swing.border.LineBorder;
E.setTitle('ex20_2');
F.getContentPane();
G.gif'));
H.gif'));
I.add(btnPre);
J.add(btnNext);
K.setLayout(c1);
L.setPreferredSize(dim);
M.setBorder(new
N.BLACK));
O.add(new
P.CENTER),'card1');
Q.add(new
R.CENTER),'card2');
S.add(new
T.CENTER),'card3');
U.add(jtb,BorderLayout.NORTH);
V.add(cp,BorderLayout.CENTER);
W.addWindowListener(new
X.exit(0);
Y.pack();
Z.setVisible(true);
[.getActionCommand().equals('next'))
.next(cp);
].previous(cp);
【参考答案】
btnNext.addActionListener(al)btnPre.addActionListener(al)......
(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)