1、 CheckboxMenuItem,表示菜单项有选择和不选择两种状态。(3) 容器构件(缺省布局采用BorderLayout方式) Panel,面板。提供一个包含其它组件或面板的容器,通过布局管理器来控制组件的位置,使组件按程序员要求排列。 Window,窗口。是容器的子类。只有依附于框架才能存在。 Frame,框架。是窗口的子类,是一个带标题和可变大小边框的顶级窗口。 Dialog不能改变大小,用于设定应用程序中的一些选项。 FileDialog,主要用于存取和打开文件的操作。2 布局管理器AWT中包含五种布局管理器,FlowLayout类、BorderLayout类、GridLayout类
2、、GridBagLayout类和CardLayout类。(1)FlowLayout类,流布局管理器 是Panel和Applet的默认布局管理器,在该布局方式下,组件按顺序一行一行地排列,从左到右,从上到下。 容器中的各个组件,默认为居中位置,也可设为左对齐或右对齐方式。 它不控制组件的大小,而是使组件保持它们原有的尺寸。(2) BorderLayout类,边界布局管理器它是Window、Frame和Dialog的默认布局管理器,它包含东、西、南、北、中五个区域。(3) GridLayout类,栅格布局管理器 每个组件占用一个栅格,从左到右,从上到下。 可创建指定行数和列数的布局,组件可以添到定
3、义的某个格子中,每个格子的大小都是一样的。(4) GridBagLayout类,栅格包布局管理器可安排、调整其纵、横方向布局的布局管理器,它不要求每个组件都具有相同尺寸。(5) CardLayout类,卡片布局管理器。3 图像处理 AWT提供各类:Graphics、Image、Color、Font和FontMetrics、Polygon、Dimension、Rectangle。 Java语言的图像处理是由java.awt.Image类、java.awt.image包以及java.awt.Graphics类提供支持。 每个图像由java.awt.Image的对象表示。 除Image类,java.
4、awt还提供了其他基本图象支持。如:Graphics的drawImage()、Toolkit的getImage()和MediaTracker类。 java.awt.image包提供了与图象处理相关的接口和类,支持创建、处理和跟踪图象。4 其它AWT类 Event类:表示用户行为。 Toolkit类:获取图象。 MediaTracket类:图象加载情况跟踪。10.2 Componet类的结构Componet类是一抽象类,用来生成一个通用的AWT构件,其中封装了AWT构件的属性和方法。public class Component extends Object public Container ge
5、tParent(); public boolean isValid(); public boolean isVisible(); public boolean isShowing(); public boolean isEnabled(); public Dimension size(); public synchronized void show(); public show(boolean cond); public synchronized void hide(); public Color getForeground(); public void move(int x,int y);
6、public void resize(int width,int height); public void paint(Graphics g); public void update(Graphics g); public void repaint(); public Image createImage(ImageProducer producer); public boolean mouseDown(Event evt,int x,int y); public boolean mouseDrag(Event evt,int x,int y); public boolean mouseUp(E
7、vent evt,int x,int y); public boolean mouseMove(Event evt,int x,int y); public boolean mouseEnter(Event evt,int x,int y); public boolean mouseExit(Event evt,int x,int y); public boolean keyDown(Event evt,int key); public boolean keyUp(Event evt,int key); public boolean action(Event evt,Object what);
8、 public boolean getFocus(Event evt,Object what); public String toString(); 10.3 AWT构件的使用1. Button,其类结构如下:public class Button extends Component public Button(); public Button(String label); public String getLabel(); public void setLabel(String label); portected String paramString();例:Button b1=new Bu
9、tton(“Button1”);add(b1);/将b1加到当前窗口2. Checkbox和CheckboxGrouppublic class Checkbox extends Component public Checkbox(); public Checkbox(String label); public Checkbox(String label, CheckboxGroup group, boolean state ); public boolean getState(); public void setState(boolean state); public CheckboxGrou
10、p getCheckboxGroup(); public void setCheckboxGroup(CheckboxGroup g);public class CheckboxGroup extends Object public CheckboxGroup(); public Checkbox getCurrent(); public synchronized void setCurrent(Checkbox t);Checkbox one=new Checkbox(“one”,false);Checkbox two=new Checkbox(“two”,true);add(one);ad
11、d(two); CheckboxGroup cbg=new CheckboxGroup(); Checkbox one=new Checkbox(“one”,cbg,false);Checkbox two=new Checkbox(“two”,cbg,true); 3. ChoicePublic class Choice extends Component Public Choice(); Public int countItems(); Public String getItem(int index); Public int getSelectedIndex(); Public synchr
12、onized void select(int pos); Public void select(String str); Public String paramString();Choice c1=new Choice();c1.addItem(“one”);c1.addItem(“two”);c1.addItem(“three”);add(c1);4. ListPublic class List extends Component Public List(); Public List(int rows,boolean multipleSelections); Public synchroni
13、zed void addItem(String item); Public synchronized void clear(); Public synchronized void delItem(int position); Public synchronized void delItems(int start,int end); Public synchronized int getSelectedIndex(); Public synchronized int getSelectedIndexs(); Public synchronized String getSelectedItem()
14、; Public boolean allowsMultipleSelections(); Public void setMultipleSelections(boolean v);List l1=new List(10,false);for(int i=0;i10;i+) l1.addItem(“item”+i);add(“Center”,l1);5. TextField和TextArea两者有共同的父类TextComponent.该类提供了一些方法:public void setText(String t);public String getText();public String getS
15、electText();public boolean isEditable();public void setEditable(boolean t);public void select(int selStart,int selEnd);public void selectAll();protected String paramSting();Public class TextField extends TextComponent Public TextField(); Public TextField(int cols); Public TextField(String text); Pub
16、lic TextField(String text,int cols); Public char getEchoChar(); Public int getColumns();Public class TextArea extends TextComponent Public TextArea (); Public TextArea (int rows,int cols); Public TextArea (String text); Public TextArea (String text, int rows ,int cols); Public void insertText(String
17、 str,int pos); Public void replaceText(String str,int start,int end); Public char getRows();TextField f=new TextField(“Single show”,30);TextArea t=new TextArea(“more line”,4,30);f.setText(“Hello);String s=t.getText();6. Labelpublic class Label extends Component public final static int CENTER; public
18、 final static int LEFT; public final static int RIGHT; public Label(); public Label(String label); public Label(String label,int alignment); public String getText(); public void setText(String label); protected String paramString();Label la1=new Label(“LABEL”);add(la1);7. Scrollbar(缺省情况下用BorderLayou
19、t)Public class Scrollbar extends Component Public final static int HORIZONTAL; Public final static int VERTICAL; Public Scrollbar(); Public Scrollbar(int orientation); Public Scrollbar(int orientation,int value,int visible, int minimum,int maximum); public int getOrientation(); public int getValue()
20、; public int getMinimum(); public int getmaximum(); public int getVisible();此外,Scrollbar类还定义了4个与滚动速度有关的方法。getLineIncrement();setLineIncrement(int li);getPageIncrement();setPageIncrement(int pi);8. Canvas,通用构件,需要由其子类添加一些具体功能。Public class Canvas extends Component Public Canvas(); Public void paint(Gra
21、phics g);/缺省情况,该方法只将画布区清为构件的背景颜色。9MenuBarpublic class MenuBar extends MenuComponent implememts MenuContainer public MenuBar(); public synchronized Menu add(Menu m); public synchronized void remove(int index); public synchronized void remove(MenuComponent m); public int countMenus(); public Menu getM
22、enu(int i);10Menupublic class MenuBar extends MenuItem implememts MenuContainer public Menu(String label); public Menu(String label,boolean tearOff); public int countItems(); public MenuItem getItem(int index); public synchronized MenuItem add(MenuItem mi); public void add(String label); public void
23、 addSeparator(); public synchronized remove(int index);11MenuItem public class MenuItem extends MenuComponent public MenuItem(String label); public void enable();12Framepublic class Frame extends Window implememts MenuContainer public Frame(); public Frame(String title); public void dispose(); publi
24、c String getTitle(); public void remove(MenuComponent m); public MenuBar getMenuBar(); public void setMenuBar(MenuBar mb);13.Windowpublic class Window extends Container public Window(Frame parent); public synchronized void pack(); public synchronized void dispose();14.Dialogpublic class Dialog exten
25、ds Window public Dialog(Frame parent,boolean modal); public Dialog(Frame parent,String title,boolean modal); public boolean isModal(); public void setTitle(String title); public boolean isResizable(); public void setResizable(boolean resizable);15.FileDialogpublic class FileDialog extends Dialog pub
26、lic final static int LOAD;/文件装载变量 public final static int SAVE;/文件保存变量 public FileDialog(Frame parent,String title); public FileDialog(Frame parent,String title,int mode); public String getDirectory(); public String getFile(); public void setDirectory(String dir); public void setFile(String file); public void setFilenameFilter(FilenameFilter filter);
copyright@ 2008-2023 冰点文库 网站版权所有
经营许可证编号:鄂ICP备19020893号-2