问题 问答题

本题中,在窗口右侧添加了一个菜单,右侧为一个文本域,菜单有“File”和“Help”,“File”菜单中有菜单项“New”、“Open”、“Save”、“Save as”和“Exit”,其中“Open”的快捷键为<Ctrl+O>,“Save”的快捷键为<Ctrl+S>,而“Help”菜单以及其中的菜单项“Index”和“About”没定了第一个字母为其快捷字母,通过鼠标单击任一个菜单项或通过快捷键以及快捷字母,都能在后台输入所选择的菜单项。
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
public class java2 extends JFrame______

private JMenuItem saveItem;
private JMenuItem saveAsItem;
private JPopupMenu popup;
private JTextArea textArea;
public java2()
setTitle("java2");
setSize(400,300);
addWindowListener(new WindowAdapter()
public void windowClosing(WindowEvent e)
System.exit(0);

);
textArea=new JTextArea(0,0);
Container contentPane=getContentPane();
contentPane.add(new JScrollPane(textArea),"Center");
JMenuBar menuBar=new JMenuBar();
menuBar.setLayout(new BoxLayout(menuBar,BoxLayout.Y_AXIS));
getContentPane().add(menuBar,BorderLayout.WEST);
HorizontalMenu fileMenu=new HorizontalMenu("File");
fileMenu.addMenuListener(this);
JMenuItem openItem=new JMenuItem("Open");
openItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_0,InputEvent.CTRL_MASK));
saveItem=new JMenuItem("Save");
saveItem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,InputEvent.CTRL_MASK));
saveAsItem=new JMenuItem("Save As");
menuBar.add(makeMenu(fileMenu,
new Object[]
"New",openItem,null,saveItem,saveAsItem,null,"Exit"
,this));
HorizontalMenu helpMenu=new HorizontalMenu("Help");
helpMenu.______(’H’);
menuBar.add(Box.createVerticalGlue());
menuBar.add(makeMenu(helpMenu,
new Object[]
new JMenuItem("Index",’I’),
new JMenuItem("About",’A’)
,this));

public void actionPerformed(ActionEvent evt)
String arg=evt.getActionCommand();
System.out.println(arg);
if(arg.equals("Exit"))
System.exit(0);

public void menuSelected(MenuEvent evt)

public void menuDeselected(MenuEvent evt)

public void menuCanceled(MenuEvent evt)

public HorizontalMenu makeMenu(Object parent,Object[]items,Object target)

HorizontalMenu m=null;
if(parent instanceof HorizontalMenu)
m=(HorizontalMenu)parent;
else if(parent instanceof String)
m=new HorizontalMenu((String)parent);
else
return null;
m.setMinimumSize(m.getPrefeHedSize());
for(int i=0;i<items.length;i++)
if(items[i]==null)
m.addSeparator();
else
m.add(makeMenuItem(items[i],target));

return m;

public static JMenuItem makeMenuItem(Object item,Object target)

JMenuItem r=null;
if(item instanceof String)
r=new JMenuItem((String)item);
else if(item instanceof JMenuItem)
r=(JMenuItem)item;
else return null;
if(target instanceof ActionListener)
r.addActionListener((ActionListener)target);
return r;

class HorizontalMenu extends JMenu
HorizontalMenu(String label)
super(label);
JPopupMenu pm=getPopupMenu();
pm.setLayout(new BoxLayout(pm,BoxLayout.X_AXIS));
setMinimumSize(getPreferredSize());


public static void main(string[]args)
Frame f=new java2();
f.show();

答案

参考答案:第1处:implements ActionListener,MenuListener
第2处:setMnemonic

解析: 第1处是实现了ActionListener接口,MenuListener接口;第2处是设置Help的快捷键为<H>。

阅读理解与欣赏

阅读下文,完成文后题目(20分)

谁与我同行

严忠付

上初中时,学校每周总有二三晚的补习课。家中离学校有三里来路地,白天不觉怎样,,三蹦两跳便到了学校,夜晚就悚然了。

过一片稻田,翻一座山岭,而过岭是极惧怕的。一条窄窄的山道,铺着青石,是乡村独轮车行的路。两旁是过人的小树林,风一吹来,飒飒作响。间或林子里有夜莺和爬行动物鸣叫,全身毛孔大张,一身冷汗。有月亮时,从密密的枝桠间透出些淡淡的光两来,洒在青石路上,行来可稍见轻松些;若遇伸手不见五指的夜晚,心口便如兜着一只小兔。

这时就想起母亲的话来,将头顶的毛发尽力往上梳,露出亮亮的额头来。母亲说,年轻人额头有团火,能驱妖捉魔。走夜路最怕的是碰上“鬼”这东西,尽管谁也没见过。总之,晚上补习归来,见四周漆黑,便无端想起了“鬼”来。

父亲见我害怕,便说:胆是锻炼出来的,你应该时时想到你是男子汉。

一天晚补习归来,刚上山岭,便见前面几时米远的地方有个火把在移动。我高兴极了,心里也不再有惧怕。我加快步伐,想赶上那火把,结伴过岭。谁知我的步子加快时,那火把移动的速度也加快了。

我的心顿时一阵惊跳,莫不是碰上老人们说的“鬼火”!夏天纳凉,老人们常说鬼的故事,都说荒郊野外有鬼火出没。一时间,我仿佛肩上压有千斤重担,两腿发软,寸步难移。

想到了父亲的话,你是男子汉,我多少鼓了鼓勇气,艰难地一步步朝前走去。但当我放慢了脚步时,火把也放慢了移动的速度,始终与我保持几十米的距离。

下了山岭,便可见人家灯光了,我也松了一口气。一摸额头,却是一头的冷汗,深知那是吓的。下了岭走在平阔的田野上,那火把便在我眼前消失了。

回到家中,我把这件事告诉了父亲,父亲却不以为然地说:“世上根本就没有鬼,夜晚的鬼火,是磷火。你在学校应该学过的,有啥害怕的。”

以后,我每次晚上回来,都能见到山岭上一支火把走在我的前面,虽然害怕,但我壮着胆子跟在后面,它终究没有伤害于我,并照亮我夜行的路。渐渐地,我便不再害怕了,我想那是与我一样夜行的路人。

那天,我告诉父亲,我不怕独自走夜路了。我甚至渐渐地感觉出夜行的快乐来——万籁俱寂,抑或虫鸣蛙叫,都有一份怡人的意境。这是不敢夜行之人所体会不到的。

从那以后,火把便在我夜行时消失了。毕业后,母亲告诉我,那是父亲打的火把。

小题1:请用简洁的语言概括故事内容(3分)

小题2:题目中的“同行”即指_______         ____

又指________________________________________。(4分)

小题3:“回到家中,我把这件事告诉了父亲”中“这件事”具体指什么?用自己的话回答。(3分)

小题4:“一时间,我仿佛肩上压有千斤重担,两腿发软,寸步难行”这句话的作用是什么?(3分)

小题5:文中的主人公是父亲,他是一个怎样的人?(3分)

小题6:假如你是文中的“我”,听母亲说把火把的是父亲时,你会想些什么(4分)。

填空题