Java语言程序设计讲义第十章Word文档下载推荐.docx
- 文档编号:6832223
- 上传时间:2023-05-07
- 格式:DOCX
- 页数:13
- 大小:18.39KB
Java语言程序设计讲义第十章Word文档下载推荐.docx
《Java语言程序设计讲义第十章Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《Java语言程序设计讲义第十章Word文档下载推荐.docx(13页珍藏版)》请在冰点文库上搜索。
●CheckboxMenuItem,表示菜单项有选择和不选择两种状态。
(3)容器构件(缺省布局采用BorderLayout方式)
●Panel,面板。
提供一个包含其它组件或面板的容器,通过布局管理器来控制组件的位置,使组件按程序员要求排列。
●Window,窗口。
是容器的子类。
只有依附于框架才能存在。
●Frame,框架。
是窗口的子类,是一个带标题和可变大小边框的顶级窗口。
●Dialog不能改变大小,用于设定应用程序中的一些选项。
●FileDialog,主要用于存取和打开文件的操作。
2.布局管理器
AWT中包含五种布局管理器,FlowLayout类、BorderLayout类、GridLayout类、GridBagLayout类和CardLayout类。
(1)FlowLayout类,流布局管理器
●是Panel和Applet的默认布局管理器,在该布局方式下,组件按顺序一行一行地排列,从左到右,从上到下。
●容器中的各个组件,默认为居中位置,也可设为左对齐或右对齐方式。
●它不控制组件的大小,而是使组件保持它们原有的尺寸。
(2)BorderLayout类,边界布局管理器
它是Window、Frame和Dialog的默认布局管理器,它包含东、西、南、北、中五个区域。
(3)GridLayout类,栅格布局管理器
●每个组件占用一个栅格,从左到右,从上到下。
●可创建指定行数和列数的布局,组件可以添到定义的某个格子中,每个格子的大小都是一样的。
(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.awt还提供了其他基本图象支持。
如:
Graphics的drawImage()、Toolkit的getImage()和MediaTracker类。
●java.awt.image包提供了与图象处理相关的接口和类,支持创建、处理和跟踪图象。
4.其它AWT类
●Event类:
表示用户行为。
●Toolkit类:
获取图象。
●MediaTracket类:
图象加载情况跟踪。
10.2Componet类的结构
Componet类是一抽象类,用来生成一个通用的AWT构件,其中封装了AWT构件的属性和方法。
publicclassComponentextendsObject{
publicContainergetParent();
publicbooleanisValid();
publicbooleanisVisible();
publicbooleanisShowing();
publicbooleanisEnabled();
publicDimensionsize();
publicsynchronizedvoidshow();
publicshow(booleancond);
publicsynchronizedvoidhide();
publicColorgetForeground();
publicvoidmove(intx,inty);
publicvoidresize(intwidth,intheight);
publicvoidpaint(Graphicsg);
publicvoidupdate(Graphicsg);
publicvoidrepaint();
publicImagecreateImage(ImageProducerproducer);
publicbooleanmouseDown(Eventevt,intx,inty);
publicbooleanmouseDrag(Eventevt,intx,inty);
publicbooleanmouseUp(Eventevt,intx,inty);
publicbooleanmouseMove(Eventevt,intx,inty);
publicbooleanmouseEnter(Eventevt,intx,inty);
publicbooleanmouseExit(Eventevt,intx,inty);
publicbooleankeyDown(Eventevt,intkey);
publicbooleankeyUp(Eventevt,intkey);
publicbooleanaction(Eventevt,Objectwhat);
publicbooleangetFocus(Eventevt,Objectwhat);
publicStringtoString();
……}
10.3AWT构件的使用
1.Button,其类结构如下:
publicclassButtonextendsComponent{
publicButton();
publicButton(Stringlabel);
publicStringgetLabel();
publicvoidsetLabel(Stringlabel);
portectedStringparamString();
例:
Buttonb1=newButton(“Button1”);
add(b1);
//将b1加到当前窗口
2.Checkbox和CheckboxGroup
publicclassCheckboxextendsComponent{
publicCheckbox();
publicCheckbox(Stringlabel);
publicCheckbox(Stringlabel,CheckboxGroupgroup,
booleanstate);
publicbooleangetState();
publicvoidsetState(booleanstate);
publicCheckboxGroupgetCheckboxGroup();
publicvoidsetCheckboxGroup(CheckboxGroupg);
}
publicclassCheckboxGroupextendsObject{
publicCheckboxGroup();
publicCheckboxgetCurrent();
publicsynchronizedvoidsetCurrent(Checkboxt);
Checkboxone=newCheckbox(“one”,false);
Checkboxtwo=newCheckbox(“two”,true);
add(one);
add(two);
CheckboxGroupcbg=newCheckboxGroup();
Checkboxone=newCheckbox(“one”,cbg,false);
Checkboxtwo=newCheckbox(“two”,cbg,true);
……
……
3.Choice
PublicclassChoiceextendsComponent{
PublicChoice();
PublicintcountItems();
PublicStringgetItem(intindex);
PublicintgetSelectedIndex();
Publicsynchronizedvoidselect(intpos);
Publicvoidselect(Stringstr);
PublicStringparamString();
Choicec1=newChoice();
c1.addItem(“one”);
c1.addItem(“two”);
c1.addItem(“three”);
add(c1);
4.List
PublicclassListextendsComponent{
PublicList();
PublicList(introws,booleanmultipleSelections);
PublicsynchronizedvoidaddItem(Stringitem);
Publicsynchronizedvoidclear();
PublicsynchronizedvoiddelItem(intposition);
PublicsynchronizedvoiddelItems(intstart,intend);
PublicsynchronizedintgetSelectedIndex();
Publicsynchronizedint[]getSelectedIndexs();
PublicsynchronizedStringgetSelectedItem();
PublicbooleanallowsMultipleSelections();
PublicvoidsetMultipleSelections(booleanv);
Listl1=newList(10,false);
for(inti=0;
i<
10;
i++){
l1.addItem(“item”+i);
add(“Center”,l1);
5.TextField和TextArea
两者有共同的父类TextComponent.该类提供了一些方法:
publicvoidsetText(Stringt);
publicStringgetText();
publicStringgetSelectText();
publicbooleanisEditable();
publicvoidsetEditable(booleant);
publicvoidselect(intselStart,intselEnd);
publicvoidselectAll();
protectedStringparamSting();
PublicclassTextFieldextendsTextComponent{
PublicTextField();
PublicTextField(intcols);
PublicTextField(Stringtext);
PublicTextField(Stringtext,intcols);
PublicchargetEchoChar();
PublicintgetColumns();
PublicclassTextAreaextendsTextComponent{
PublicTextArea();
PublicTextArea(introws,intcols);
PublicTextArea(Stringtext);
PublicTextArea(Stringtext,introws,intcols);
PublicvoidinsertText(Stringstr,intpos);
PublicvoidreplaceText(Stringstr,intstart,intend);
PublicchargetRows();
TextFieldf=newTextField(“Singleshow”,30);
TextAreat=newTextArea(“moreline”,4,30);
f.setText(“Hello’);
Strings=t.getText();
6.Label
publicclassLabelextendsComponent{
publicfinalstaticintCENTER;
publicfinalstaticintLEFT;
publicfinalstaticintRIGHT;
publicLabel();
publicLabel(Stringlabel);
publicLabel(Stringlabel,intalignment);
publicStringgetText();
publicvoidsetText(Stringlabel);
protectedStringparamString();
Labella1=newLabel(“LABEL”);
add(la1);
7.Scrollbar(缺省情况下用BorderLayout)
PublicclassScrollbarextendsComponent{
PublicfinalstaticintHORIZONTAL;
PublicfinalstaticintVERTICAL;
PublicScrollbar();
PublicScrollbar(intorientation);
PublicScrollbar(intorientation,intvalue,intvisible,
intminimum,intmaximum);
publicintgetOrientation();
publicintgetValue();
publicintgetMinimum();
publicintgetmaximum();
publicintgetVisible();
此外,Scrollbar类还定义了4个与滚动速度有关的方法。
getLineIncrement();
setLineIncrement(intli);
getPageIncrement();
setPageIncrement(intpi);
8.Canvas,通用构件,需要由其子类添加一些具体功能。
PublicclassCanvasextendsComponent{
PublicCanvas();
Publicvoidpaint(Graphicsg);
//缺省情况,该方法只将画布区清为构件的背景颜色。
9.MenuBar
publicclassMenuBarextendsMenuComponent
implememtsMenuContainer{
publicMenuBar();
publicsynchronizedMenuadd(Menum);
publicsynchronizedvoidremove(intindex);
publicsynchronizedvoidremove(MenuComponentm);
publicintcountMenus();
publicMenugetMenu(inti);
10.Menu
publicclassMenuBarextendsMenuItem
implememtsMenuContainer{
publicMenu(Stringlabel);
publicMenu(Stringlabel,booleantearOff);
publicintcountItems();
publicMenuItemgetItem(intindex);
publicsynchronizedMenuItemadd(MenuItemmi);
publicvoidadd(Stringlabel);
publicvoidaddSeparator();
publicsynchronizedremove(intindex);
11.MenuItem
publicclassMenuItemextendsMenuComponent{
publicMenuItem(Stringlabel);
publicvoidenable();
12.Frame
publicclassFrameextendsWindowimplememtsMenuContainer{
publicFrame();
publicFrame(Stringtitle);
publicvoiddispose();
publicStringgetTitle();
publicvoidremove(MenuComponentm);
publicMenuBargetMenuBar();
publicvoidsetMenuBar(MenuBarmb);
13.Window
publicclassWindowextendsContainer{
publicWindow(Frameparent);
publicsynchronizedvoidpack();
publicsynchronizedvoiddispose();
14.Dialog
publicclassDialogextendsWindow{
publicDialog(Frameparent,booleanmodal);
publicDialog(Frameparent,Stringtitle,booleanmodal);
publicbooleanisModal();
publicvoidsetTitle(Stringtitle);
publicbooleanisResizable();
publicvoidsetResizable(booleanresizable);
15.FileDialog
publicclassFileDialogextendsDialog{
publicfinalstaticintLOAD;
//文件装载变量
publicfinalstaticintSAVE;
//文件保存变量
publicFileDialog(Frameparent,Stringtitle);
publicFileDialog(Frameparent,Stringtitle,intmode);
publicStringgetDirectory();
publicStringgetFile();
publicvoidsetDirectory(Stringdir);
publicvoidsetFile(Stringfile);
publicvoidsetFilenameFilter(FilenameFilterfilter);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 语言程序设计 讲义 第十