[填空题] 有如下代码片段,请在画线处填入正确的代码,使程序运行正确。 import javax.swing.*; import java.awt.*; import java.event.*; public class JAppletTest extends 【12】 { public void init( ) {Container contentPane = getContentPane( );Icon icon = new ImageIcon("swing.gif", "A GIF on a swing");JLabel label = new JLabel("Swing!", icon, SwingConstants.CENTER);contentPane.add(label, BorderLayout.CENTER); } }
参考解析:本题是考查Swing组件的使用方法,有几点需要注意。 ① 程序的最后一行(contentPane.add(1abel,Bor derLayout.CENTER))不是必须的,因为JApplet类使用BorderLayout的一个实例作为其内容窗格的布局管理器,而BorderLayout的默认约束条件是BorderLayout.CENTER,所以程序的最后一行不是必须的。 ② Applet的默认布局管理器是FlowLayout,而FlowLayout的默认约束条件是FlowLayout. LEFT,这是二者最显著的区别之一。 ③ JApplet是只包含一个组件的容器,这个组件就是JRootPane的一个实例,而JRootPane包含了一个称做内容窗格的容器。 ④ 内容窗格,它包含与特定的小应用程序有关的所有内容。即是说,小应用程序必须把所有的组件添加到内容窗格中,而不是把它们直接添加到小应用程序中。 ⑤ 不能直接为小应用程序设置布局管理器。 ⑥ JApplet的实例可以有一个菜单栏,它是由 setJMenuBar方法指定的,而AWT小应用程序却不能。