7. 文本输入区(TextArea)
TextArea可以显示多行多列的文本。使用setEditable(boolean)方法,可以将其设置为只读的。在TextArea中可以显示水平或垂直的滚动条。
要判断文本是否输入完毕,可以在TextArea旁边设置一个按钮,通过按钮点击产生的ActionEvent对输入的文本进行处理。
8. 列表(List)
列表中提供了多个文本选项,列表支持滚动条,可以浏览多项
List lst=new List(4,false); //两个参数分别表示显示的行数、是否允许多选
lst.add("Venus");
lst.add("Earth");
lst.add("JavaSoft");
lst.add("Mars");
cnt.add(lst);
9. 框架(Frame)
Frame是顶级窗口,可以显示标题,重置大小。当Frame被关闭,将产生WindowEvent事件,Frame无法直接监听键盘输入事件。
10. 对话框(Dialog)
它是Window类的子类。对话框和一般窗口的区别在于它依赖于其它窗口。对话框分为非模式(non-modal)和模式(modal)两种。
11. 文件对话框(Filedialog)
当用户想打开或存储文件时,使用文件对话框进行操作。主要代码如下:
FileDialog d=new FileDialog(ParentFr,"FileDialog");
d.setVisible(true);
String filename=d.getFile();
12. 菜单(Menu)
无法直接将菜单添加到容器的某一位置,也无法使用布局管理器对其加以控制。菜单只能被添加?quot;菜单容器"(MenuBar)中。
13. MenuBar
只能被添加到Frame对象中,作为整个菜单树的根基。
Frame fr = new Frame("MenuBar");
MenuBar mb = new MenuBar();
fr.setMenuBar(mb);
fr.setSize(150,100);
fr.setVisible(true);
14. Menu
下拉菜单。它可以被添加到MenuBar中或其它Menu中。
Frame fr = new Frame("MenuBar");
MenuBar mb = new MenuBar();
fr.setMenuBar(mb);
Menu m1 = new Menu("File");
Menu m2 = new Menu("Edit");
Menu m3 = new Menu("Help");
mb.add(m1);
mb.add(m2);
mb.setHelpMenu(m3);
fr.setSize(200,200);
fr.setVisible(true);
查看运行结果
15. MenuItem
MenuItem是菜单树中的"叶子节点"。MenuItem通常被添加到一个Menu中。对于MenuItem对象可以添加ActionListener,使其能够完成相应的操作。
Menu m1 = new Menu("File");
MenuItem mi1 = new MenuItem("Save");
MenuItem mi2 = new MenuItem("Load");
MenuItem mi3 = new MenuItem("Quit");
m1.add(mi1);
m1.add(mi2);
m1.addSeparator();
m1.add(mi3);
查看运行结果
MenuBar和Menu都没有必要注册监听器,只需要对MenuItem添加监听器ActionListener,完成相应操作。
16. 组件与监听器的对应关系
下表中列出了各个组件与所有的监听器的对应关系,打上""表明该组件可以注册此种监听器。
表5.2
监听器接口 | Act | Adj | Cmp | Cnt | Foc | Itm | Key | Mou | MM | Text | Win |
Button | |||||||||||
Canvas | |||||||||||
Checkbox | |||||||||||
CheckboxMenuItem | |||||||||||
Choice | |||||||||||
Component | |||||||||||
Container | |||||||||||
Dialog | |||||||||||
Frame | |||||||||||
Label | |||||||||||
List | |||||||||||
MenuItem | |||||||||||
Panel | |||||||||||
Scrollbar | |||||||||||
ScrollPane | |||||||||||
TextArea | |||||||||||
TextField | |||||||||||
Window |
Act=ActionListener Adj=AdjustmentListener Cmp=ComponentListener
Cnt=ConatainerListener Foc=FocusListener Itm=ItemListener
Key=KeyListener Mou=MouseListener MM=MouseMotionListener
Text=TextListener Win=WindowListener