




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
第13章處理圖形界面組件組件主講:XXX復(fù)習(xí)提問
1、說出8種窗口組件。
2、框架和面板有什么不同?
3、FlowLayout是什么?有哪些主要特點?
本章提要主要知識點:JDK事件處理模型;事件監(jiān)聽器;事件適配器;AWT和swing主要組件學(xué)習(xí)目標(biāo):掌握AWT的功能,主要組件的應(yīng)用方法,窗口的布局管理方法,窗口事件處理過程,能夠運用AWT和swing組件設(shè)計圖形用戶界面
。13.1AWT事件處理過程13.1.1JDK事件處理模型事件處理模型:是指事件的處理過程。jdk1.1的事件模型將事件源(事件產(chǎn)生處的AWT組件)和監(jiān)聽器(對事件作出具體動作的實體)分開。將事件處理委托給外部的實體。一般情況下,AWT組件都不處理自己的事件,這種模型叫做事件的授權(quán)處理模型(DelegationModel)。
13.1AWT事件處理過程事件處理模型示例:importjava.awt.*;importjava.awt.event.*;publicclassTestButton{
publicstaticvoidmain(String
args[]){
Framef=newFrame("這是一個窗口");
Buttonb=newButton("請按這里!");
//向按鈕注冊事件監(jiān)聽器,監(jiān)聽ActionEvent事件。
b.addActionListener(new
ButtonHandler());
f.setLayout(new
FlowLayout());
f.add(b);
f.setSize(200,100);f.setVisible(true);}}classButtonHandlerimplementsActionListener{//定義事件監(jiān)聽器類
publicvoidactionPerformed(ActionEvente){//實現(xiàn)接口中的特定方法
System.out.println("您單擊了按鈕");}}
13.1AWT事件處理過程在該程序中,向按鈕b注冊事件監(jiān)聽器ButtonHandler的對象,把對按鈕事件的處理集中到ButtonHandler類的對象中,這樣可以把GUI的設(shè)計和事件處理代碼有效的分開,實現(xiàn)模塊化。在這里按鈕是事件源(EventSource),ButtonHandler對象是監(jiān)聽器。當(dāng)按鈕被點擊時,產(chǎn)生一個ActionEvent事件,把生成的事件對象傳遞給已經(jīng)注冊的監(jiān)聽ActionEvent類型事件的監(jiān)聽器ButtonHandler對象。該對象會自動調(diào)用其actionPerformed()方法處理該事件。
13.1AWT事件處理過程原則:當(dāng)事件產(chǎn)生時,該事件被送到產(chǎn)生該事件的組件去處理,而要能夠處理這個事件,該組件必須登記(register)有與該事件有關(guān)的一個或多個被稱為listeners的類,這些類包含了相應(yīng)的方法能接受事件并對事件進(jìn)行處理。1、實現(xiàn)XXXListener接口的類生成的對象為事件監(jiān)聽器。其中XXX指的是事件的類型。在本例中為ActionListiner接口。實現(xiàn)這個接口的類的對象可以作為ActionEvent事件的監(jiān)聽器。一種類型的事件對應(yīng)一種事件監(jiān)聽器。2、事件源通過調(diào)用自己的方法可以注冊特定類型事件監(jiān)聽器。在本例中為addActionListener(ActionListener)。3、事件發(fā)生后,產(chǎn)生表示特定事件的事件對象,事件對象被傳遞給已經(jīng)注冊的事件監(jiān)聽器,調(diào)用監(jiān)聽器中的特定方法處理事件。在本例中ActionEvent事件對象被傳遞給事件監(jiān)聽器ButtonHandler對象,然后調(diào)用其中的actionPerformed()方法完成事件的處理。13.1AWT事件處理過程處理Java的GUI事件需要兩步:1、定義特定事件的事件監(jiān)聽器(類),在其特定方法中編寫處理事件的代碼。2、向事件源注冊事件監(jiān)聽器(add方法)。13.1AWT事件處理過程13.1.2事件監(jiān)聽器
每種事件的類型都有其自己的注冊方法。一般形式為:publicvoidadd事件類型Listener(EvenTypeListenere)
13.1AWT事件處理過程13.1.2事件監(jiān)聽器
1、AWT的事件類型及其監(jiān)聽器(1)WindowEvent窗口事件引發(fā)原因是有關(guān)窗口操作引發(fā)的事件,其事件監(jiān)聽接口是WindowListener。接口方法(全部是抽象方法)包括7個,它們都必須實現(xiàn)。windowActivated(WindowEvent
e)//激活窗口windowClosed(WindowEvent
e)//關(guān)閉窗口后執(zhí)行的動作windowClosing(WindowEvent
e)//利用窗口關(guān)閉框關(guān)閉窗口windowDeactivated(WindowEvent
e)//本窗口成為非活動窗口windowDeiconified(WindowEvent
e)//從最小化恢復(fù)為普通窗口windowIconified(WindowEvent
e)//窗口變?yōu)樽钚』瘓D標(biāo)windowOpened(WindowEvent
e)//當(dāng)窗口首次打開成為可見時13.1AWT事件處理過程13.1.2事件監(jiān)聽器
WindowEvent窗口事件的接口適配器是WindowAdapter,注冊窗口事件的方法是addWindowListener。實現(xiàn)關(guān)閉窗口的一般功能是:publicvoidwindowClosing(WindowEvente){System.exit(0);}13.1AWT事件處理過程(2)ActionEvent活動事件引發(fā)原因:單擊按扭、雙擊列表框中選項、選擇菜單項、文本框中的回車。事件監(jiān)聽接口:ActionListener接口方法:actionPerformed(ActionEvente)組件注冊該事件方法:addActionListener(監(jiān)聽者)13.1AWT事件處理過程(3)TextEvent文本事件引發(fā)原因:文本框或文本區(qū)域內(nèi)容改變事件監(jiān)聽接口:TextListener接口方法:textValueChanged(TextEvent
e)組件注冊該事件方法:addTextListener(監(jiān)聽者)13.1AWT事件處理過程(4)ItemEvent選項事件引發(fā)原因:改變列表框中的選中項、改變復(fù)選框選中狀態(tài)、改變下拉選單的選中項。事件監(jiān)聽接口:ItemListener接口方法:itemStateChanged(ItemEvent
e)組件注冊該事件方法:addItemListener(監(jiān)聽者)13.1AWT事件處理過程(5)AdjustmentEvent調(diào)整事件引發(fā)原因:操作滾動條改變滑塊位置事件監(jiān)聽接口:AdjustmentListener接口方法:adjustmentValueChanged(AdjustmentEvent
e)組件注冊該事件方法:addAdjustmentListener(監(jiān)聽者)13.1AWT事件處理過程(6)KeyEvent鍵盤事件引發(fā)原因有三種:敲完鍵(KEY-TYPED)按下鍵(KEY-PRESSED)釋放鍵(KEY-RELEASE)事件監(jiān)聽接口:KeyListener13.1AWT事件處理過程(6)KeyEvent鍵盤事件接口方法有三種:敲完鍵(KEY-TYPED)按下鍵(KEY-PRESSED)釋放鍵(KEY-RELEASE)事件監(jiān)聽接口:KeyListenerkeyPressed(KeyEvent
e)//鍵已被按下時調(diào)用keyReleased(KeyEvent
e)//鍵已被釋放時調(diào)用keyTyped(KeyEvent
e)//鍵已被敲完時調(diào)用KeyEvent方法:charch=e.getKeyChar();事件監(jiān)聽適配器(抽象類):KeyAdapter組件注冊該事件方法:addKeyListener(監(jiān)聽者)13.1AWT事件處理過程(7)MouseEvent事件引發(fā)原因:鼠標(biāo)作用在一個組件上。鼠標(biāo)事件:鼠標(biāo)鍵按下,鼠標(biāo)鍵抬起,單擊鼠標(biāo),鼠標(biāo)光標(biāo)進(jìn)入一個組件,鼠標(biāo)光標(biāo)離開一個組件。鼠標(biāo)移動事件:鼠標(biāo)移動,鼠標(biāo)拖動。13.1AWT事件處理過程(7)MouseEvent事件鼠標(biāo)事件監(jiān)聽接口1:MouseListener//接受鼠標(biāo)事件該接口方法包括三種:mouseClicked(MouseEvent
e)mouseEntered(MouseEvent
e)//鼠標(biāo)光標(biāo)進(jìn)入一個組件mouseExited(MouseEvent
e)//鼠標(biāo)光標(biāo)離開一個組件鼠標(biāo)事件監(jiān)聽適配器(抽象類):MouseAdapter。13.1AWT事件處理過程(7)MouseEvent事件鼠標(biāo)事件監(jiān)聽接口2:MouseMotionListener//接受鼠標(biāo)移動事件該接口方法:mouseMoved(MouseEvent
e)//鼠標(biāo)光標(biāo)在組件上移動mouseDragged(MouseEvent
e)//用鼠標(biāo)拖動一個組件鼠標(biāo)移動事件監(jiān)聽適配器MouseMotionAdapter組件注冊鼠標(biāo)事件方法:addMouseListener(監(jiān)聽者)組件注冊鼠標(biāo)移動事件方法:addMouseMotionListener(監(jiān)聽者)13.1AWT事件處理過程(7)MouseEvent事件MouseEvent方法:e.getClickCount()//=1單擊=2雙擊Pointe.getPoint()//取鼠標(biāo)光標(biāo)位置int
e.getX()和int
e.getY()//取鼠標(biāo)光標(biāo)位置e.getModifiers()=e.BUTTON1_MASK//鼠標(biāo)左鍵
=e.BUTTON3_MASK//鼠標(biāo)右鍵13.1AWT事件處理過程(8)FocusEvent焦點事件引發(fā)原因:組件獲得焦點組件失去焦點接口方法:focusGained(FocusEvent
e)//組件獲得焦點時調(diào)用focusLost(FocusEvent
e)//組件失去焦點時調(diào)用事件監(jiān)聽接口:FocusListener注冊方法:addFocusListener13.1AWT事件處理過程(9)ComponentEvent組件事件引發(fā)原因:當(dāng)組件移動、改變大小、改變可見性時引發(fā)。事件監(jiān)聽接口:ComponentListener。接口方法:componentHidden(ComponentEvente)//組件隱藏componentMoved(ComponentEvent
e)//組件移動componentResized(ComponentEvent
e)//組件改變大小componentShown(ComponentEvent
e)//組件變?yōu)榭梢娊涌谶m配器:ComponentAdapter。組件注冊該事件方法:addComponentListener。
13.1AWT事件處理過程(10)ContainerEvent容器事件引發(fā)原因:當(dāng)容器內(nèi)增加或移走組件時引發(fā)。事件監(jiān)聽接口:ContainerListener
主要接口方法是:componentAdded(ContainerEvent
e)//容器內(nèi)加入組件componentRemoved(ContainerEvent
e)//從容器中移走組件接口適配器:ContainerAdapter。容器注冊該事件方法:addContainerListener
13.1AWT事件處理過程例1:編程實現(xiàn)單擊按鈕發(fā)出聲音。importjava.awt.*;importjava.awt.event.*;publicclassButtonSoundimplementsActionListener,WindowListener{//類ButtonSound同時實現(xiàn)兩種監(jiān)聽器Framef;Buttonb;publicstaticvoidmain(String
args[]){ButtonSound
bs=newButtonSound();bs.go();}13.1AWT事件處理過程publicvoidgo(){f=newFrame("監(jiān)聽器使用實例");f.addWindowListener(this);//給框架注冊窗口監(jiān)聽器b=newButton("點擊這里發(fā)出聲音");f.add(b);b.addActionListener(this);//給按鈕注冊活動事件監(jiān)聽器f.setVisible(true);f.setSize(300,200);}13.1AWT事件處理過程publicvoidactionPerformed(ActionEvente){Toolkit.getDefaultToolkit().beep();}//發(fā)聲命令publicvoidwindowActivated(WindowEvente){}publicvoidwindowClosed(WindowEvente){}publicvoidwindowDeactivated(WindowEvente){}publicvoidwindowDeiconified(WindowEvente){}publicvoidwindowIconified(WindowEvente){}publicvoidwindowOpened(WindowEvente){}publicvoidwindowClosing(WindowEvente){System.exit(0);}}//主類結(jié)束13.1AWT事件處理過程13.1.3事件適配器
監(jiān)聽器中的抽象方法在程序中都必須實現(xiàn)才可以正常運行,即使內(nèi)容為空也不能省略。為了簡化代碼編寫,Java提供了一個叫做適配器的類。在適配類中系統(tǒng)自動實現(xiàn)了相應(yīng)接口中的全部方法,但內(nèi)容都是空。13.1AWT事件處理過程13.1AWT事件處理過程13.1.3事件適配器如:對于鼠標(biāo)事件,在MouseListener接口中,聲明了如下5個方法,需要逐一實現(xiàn)。MouseClicked(MouseEvent
e)MouseEntered(MouseEvent
e)MouseExited(MouseEvent
e)MouseReleased(MouseEvent
e)MousePressed(MouseEvent
e)
13.1AWT事件處理過程13.1.3事件適配器創(chuàng)建新類時,就不必再實現(xiàn)全部方法了,只要繼承適當(dāng)?shù)倪m配器,并且覆蓋所關(guān)心的事件處理方法即可如:對于MouseAdapter有如下定義----publicabstractclassMouseAdapterimplementsMouseListener{publicvoidmouseClicked(MouseEvente){}publicvoidmouseEntered(MouseEvente){}publicvoidmouseExited(MouseEvente){}publicvoidmouseReleased(MouseEvente){}publicvoidmousePressed(MouseEvente){}}13.1AWT事件處理過程13.1.3事件適配器例2:用適配器實現(xiàn)窗口的關(guān)閉。importjava.awt.*;importjava.awt.event.*;//以下同時注冊適配器和監(jiān)聽器classButtonExampleextendsWindowAdapterimplementsActionListener{Framef;Buttonb;publicstaticvoidmain(Stringargs[]){
ButtonExamplebe=newButtonExample();be.init();}13.1AWT事件處理過程13.1.3事件適配器publicvoidinit(){f=newFrame("適配器例題");b=newButton("按這里有聲音");
b.addActionListener(this);f.add(b,"South");
f.addWindowListener(this);f.setSize(300,300);f.setVisible(true);}13.1AWT事件處理過程13.1.3事件適配器publicvoidactionPerformed(ActionEvente){
Toolkit.getDefaultToolkit().beep();}publicvoidwindowClosing(WindowEvente){System.exit(0);}//只實現(xiàn)了一個抽象方法即可}13.2AWT基本組件13.2.1Label標(biāo)簽
1、構(gòu)造方法Label()Label(String
labeltext)Label(String
labeltext,intalignment)13.2AWT基本組件
13.2.1Label標(biāo)簽2、常用方法publicint
getAlignment()publicStringgetText()publicvoidsetAlignment(intalignment)publicvoidsetText(Stringlabel)13.2AWT基本組件
例1:創(chuàng)建標(biāo)簽并顯示內(nèi)容importjava.awt.*;publicclassLabelDemo{publicstaticvoidmain(String
args[]){Framef;Labell1,l2,l3;f=newFrame("標(biāo)簽示例");
f.setLayout(newGridLayout(3,1,30,30));l1=newLabel("ThisisLabel1");l2=newLabel("ThisisLabel2");l3=newLabel("ThisisLabel3");f.add(l1);f.add(l2);f.add(l3);f.setSize(300,200);f.setVisible(true);}}13.2AWT基本組件
13.2.2Button按鈕構(gòu)造方法:publicButton();publicButton(Stringlabel);常用方法:publicStringgetLabel();publicvoidsetLabel(Stringlabel);
13.2AWT基本組件
例2:按鈕應(yīng)用--建立一個按鈕Example,單擊此按鈕交替顯示文本“您按下了奇數(shù)次按鈕”和“您按下了偶數(shù)次按鈕”
importjava.awt.*;importjava.awt.event.*;classButtonDemoextendsWindowAdapterimplementsActionListener{Framef;Buttonb;Labell;
intflag=0;13.2AWT基本組件
publicstaticvoidmain(String
args[]){
ButtonDemo
bt=newButtonDemo();
bt.init();}publicvoidinit(){f=newFrame("按鈕例題");b=newButton("Example");
b.addActionListener(this);//this代表bt對象
f.add(b,"South");l=newLabel();
f.add(l,"North");
f.addWindowListener(this);f.setSize(300,300);f.setVisible(true);}13.2AWT基本組件
publicvoidactionPerformed(ActionEvente){Strings1="您按下了奇數(shù)次按鈕";Strings2="您按下了偶數(shù)次按鈕";if(flag==0){l.setText(s1);flag=1;}else{l.setText(s2);flag=0;}}publicvoidwindowClosing(WindowEvente){System.exit(0);}}思考題在例2的基礎(chǔ)上,要放置2個按鈕,并實現(xiàn)對兩個按鈕的監(jiān)聽,并輸出相應(yīng)的提示信息,該怎么改造?importjava.awt.*;importjava.awt.event.*;classButton2DemoextendsWindowAdapterimplementsActionListener{Framef;Buttonb1,b2;Labell;
intflag=0;publicstaticvoidmain(String
args[]){Button2Demobt=newButton2Demo();
bt.init();}publicvoidinit(){f=newFrame("按鈕例題");
b1=newButton("button1");b1.addActionListener(this);b2=newButton("button2");b2.addActionListener(this);
f.add(b1,"South");
f.add(b2,"North");l=newLabel();
f.add(l,"Center");
f.addWindowListener(this);f.setSize(300,300);f.setVisible(true);}publicvoidactionPerformed(ActionEvente){Strings1="您按下了奇數(shù)次按鈕";Strings2="您按下了偶數(shù)次按鈕";if(e.getSource()==b1){s1+=",您當(dāng)前按下的按鈕是第1個";s2+=",您當(dāng)前按下的按鈕是第1個";}if(e.getSource()==b2){s1+=",您當(dāng)前按下的按鈕是第2個";s2+=",您當(dāng)前按下的按鈕是第2個";}if(flag==0){l.setText(s1);flag=1;}else{l.setText(s2);flag=0;}}publicvoidwindowClosing(WindowEvente){System.exit(0);}}13.2AWT基本組件
13.2.3Checkbox復(fù)選框
1、構(gòu)造方法publicCheckbox()//無標(biāo)簽,初始為關(guān)publicCheckbox(Stringlabel)//有標(biāo)簽,初始為關(guān)publicCheckbox(String
label,booleanstate)publicCheckbox(Stringlabel,booleanstate,CheckboxGroupgroup)//構(gòu)造具有指定標(biāo)簽的Checkbox,并將它設(shè)置為指定狀態(tài),使它處于指定復(fù)選框組中。13.2AWT基本組件2、主要方法addItemListener(ItemListenerl)
添加指定的項偵聽器,以接收來自此復(fù)選框的項事件。getCheckboxGroup()
確定此復(fù)選框的組。getLabel()
獲取此復(fù)選框的標(biāo)簽。
getState()
確定此復(fù)選框是處于“開”狀態(tài),還是處于“關(guān)”狀態(tài)。removeItemListener(ItemListenerl)
移除此項偵聽器,這樣項偵聽器將不再接收發(fā)自此復(fù)選框的項事件setCheckboxGroup(CheckboxGroupg)
將此復(fù)選框的組設(shè)置為指定復(fù)選框組。setLabel(Stringlabel)
將此復(fù)選框的標(biāo)簽設(shè)置為字符串setState(booleanstate)
將此復(fù)選框的狀態(tài)設(shè)置為指定狀態(tài)。13.2AWT基本組件例3:復(fù)選框綜合應(yīng)用,設(shè)計三個復(fù)選框,實現(xiàn)對它們的全部監(jiān)聽,并將各個復(fù)選框的選中狀態(tài)顯示在文本區(qū)域中。13.2AWT基本組件
13.2.4檢查框組—單選按鈕
創(chuàng)建單選按鈕的方法是:publicCheckbox(String
s,CheckboxGroup
c,booleanstate);創(chuàng)建單選按鈕的步驟:創(chuàng)建一個CheckboxGroup
對象再創(chuàng)建各單選按鈕,并將此按鈕放入檢查框組13.2AWT基本組件
13.2.4檢查框組—單選按鈕
常用方法publicCheckboxGroup
getCheckboxGroup()//返回按鈕所在的檢查框組;publicStringgetLabel()//返回標(biāo)簽publicStringgetState()//選中狀態(tài)publicvoidsetCheckboxGroup(CheckboxGroupg)//返回按鈕所在的復(fù)選框組;publicvoidsetLabel(Stringlabel)//設(shè)置標(biāo)簽publicvoidsetState(booeanstate)//設(shè)置狀態(tài)例4:單選框和復(fù)選框綜合應(yīng)用關(guān)鍵語句:監(jiān)聽器的使用檢查框組的建立用戶選項的獲得13.2AWT基本組件
13.2.5Choice選擇菜單框(下拉列表框)1、構(gòu)造方法publicChoice()2、Choice選項框的常用方法publicvoidaddItem(Stringitem)publicint
countItem()publicStringgetItem(intindex)13.2AWT基本組件
13.2.5Choice選擇框常用方法
publicint
setSelectIndex()publicint
getSelectItem()publicvoidselect(intpos)publicvoidselect(String
str)
例5:選擇框綜合應(yīng)用importjava.awt.*;importjava.applet.Applet;importjava.awt.event.*;publicclassChoiceDemoextendsAppletimplementsItemListener{publicvoidinit(){Labell=newLabel("請選擇您最喜歡的城市:");add(l);監(jiān)聽器接口:ItemListener注冊監(jiān)聽器:addItemListner抽象方法:itemStateChanged單選框綜合應(yīng)用Choicec=newChoice();c.addItem("北京");c.addItem("上海");c.addItem("重慶");c.addItem("天津");c.addItem("武漢");c.addItem("沈陽");c.addItem("深圳");add(c);c.addItemListener(this);}publicvoid
itemStateChanged(ItemEvente){Stringcity="北京";//equals方法相當(dāng)于等于=if(e.getItem().equals("上海"))city="上海";if(e.getItem().equals("重慶"))city="重慶";if(e.getItem().equals("天津"))city="天津";if(e.getItem().equals("武漢"))city="武漢";if(e.getItem().equals("沈陽"))city="沈陽";if(e.getItem().equals("深圳"))city="深圳";System.out.println("您最喜歡的城市是:"+city);}}單選框綜合應(yīng)用-用application實現(xiàn)importjava.awt.*;importjava.awt.event.*;publicclassChoiceApplicationextendsWindowAdapterimplementsItemListener{Framef=newFrame("Choice選擇框");publicstaticvoidmain(String
args[]){ChoiceApplicationca=newChoiceApplication();ca.init();}publicvoidinit(){Labell1=newLabel("請選擇您最喜歡的城市:");f.setSize(300,300);f.setVisible(true);f.add(l1,"North");Choicec=newChoice();c.addItem("北京");c.addItem("上海");c.addItem("重慶");c.addItem("天津");c.addItem("武漢");c.addItem("沈陽");c.addItem("深圳");f.add(c,"Center");c.addItemListener(this);//下面使用了匿名對象(無對象名)f.addWindowListener(new
WindowAdapter(){publicvoidwindowClosing(WindowEvente){System.exit(0);}});}單選框綜合應(yīng)用-用application實現(xiàn)publicvoiditemStateChanged(ItemEvente){Stringcity="北京";if(e.getItem().equals("上海"))city="上海";if(e.getItem().equals("重慶"))city="重慶";if(e.getItem().equals("天津"))city="天津";if(e.getItem().equals("武漢"))city="武漢";if(e.getItem().equals("沈陽"))city="沈陽";if(e.getItem().equals("深圳"))city="深圳";Labell2=newLabel();f.add(l2,"South");l2.setText("您最喜歡的城市是:"+city);}}13.2AWT基本組件
13.2.6文本框TextField
1、構(gòu)造方法publicTextField()publicTextField(Stringtext)publicTextField(intcolumns)publicTextField(Stringtext,intcolumns)
13.2AWT基本組件
13.2.6文本框TextField
2、常用方法publicvoidsetEchoChar(charc)publicvoidsetText(Stringt)3、文本框創(chuàng)建方法TextField
tf=newTextField("SingleLine",30);用戶輸入文本內(nèi)容后,按回車鍵,引發(fā)ActionEvent事件,可用實現(xiàn)了ActionListener接口的類通過ActionPerformed()方法處理。13.2AWT基本組件
例6:建立一個界面,能輸入用戶名和口令。13.2AWT基本組件
13.2.7文本區(qū)域TextArea
構(gòu)造方法:textArea()textArea(int
rows,intcols)textArea(Stringtext)textArea(Stringtext,int
rows,intcols)textArea(String
text,int
rows,int
cols,int
scrollbars)13.2AWT基本組件
13.2.7文本區(qū)域TextArea
scrollbars常量包括:SCROLLBARS_BOTH:同時顯示水平方向和垂直方向的滾動條。SCROLLBARS_VERTICAL_ONLY:只顯示垂直方向的滾動條。SCROLLBARS_HORIZONAL_ONLY:只顯示水平方向的滾動條。SCROLLBARS_NONE:不顯示滾動條。13.2AWT基本組件
13.2.7文本區(qū)域TextArea
常用方法publicvoidappend(String
str)//追加文字publicvoidinsert(String
str,intpos)//指定位置插入文字publicvoidsetText(String
str)//設(shè)置區(qū)域內(nèi)容13.2AWT基本組件
13.2.7文本區(qū)域TextArea
publicint
getRows()//返回行數(shù)publicint
getColumns()//返回列數(shù)publicvoidsetRows(introws)//設(shè)置行數(shù)publicvoidsetColumns(intcols)//設(shè)置列數(shù)publicvoidsetEditable(booleanb)//設(shè)置區(qū)域的編輯狀態(tài)監(jiān)聽器:TextListener注冊監(jiān)聽器的方法:addTextListener要實現(xiàn)的抽象方法:textValueChanged(TextEvente)例7:制作如下界面:讓文本區(qū)3顯示文本區(qū)2中的內(nèi)容13.2AWT基本組件
13.2.8List列表框1、構(gòu)造方法publicList()publicList(introws)publicList(int
rows,boolean
isMultiMode)2、主要方法voidadd(Stringitem)13.2AWT基本組件
13.2.8List列表框3、接口處理選擇某個選項,將引發(fā)ItemEvent事件,該事件需要由ItemListener接口中的itemStateChanged方法進(jìn)行處理,雙擊選項時,引發(fā)ActionEvent事件,該事件需要由ActionListener接口中的actionPerformed()方法進(jìn)行處理。13.2AWT基本組件
13.2.8List列表框的常用方法voidadd(Stringitem,intindex)voidadd(Stringitem,intindex)voidaddItem(Stringitem)voidaddItem(Stringitem,intindex)boolean
allowsMultipleSelections()voidclear()int
countItems()voiddelItem(intposition)vo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 氣管技能考試題及答案
- 民法中考試題及答案
- 2025年廣州市天河區(qū)五一小學(xué)教師招聘考試筆試試題(含答案)
- 北京知識付費主播培訓(xùn)課件
- 醫(yī)學(xué)綜合考試題(附參考答案)
- 壓力性損傷診療與護(hù)理規(guī)范理論考核試題及答案
- 醫(yī)用Ⅲ類射線裝置試題及答案
- 各種注射技術(shù)操作并發(fā)癥預(yù)防及處理試題(有答案)
- 2025年高壓電工(復(fù)審)電工作業(yè)模擬考試題及答案
- 2024年稅務(wù)師題庫及答案(典優(yōu))
- 2025高職單招考試題(附答案)
- 儲能系統(tǒng)運維安全手冊
- GB/T 45997-2025科技成果五元價值評估指南
- 轉(zhuǎn)讓網(wǎng)約車合同協(xié)議書范本
- 醫(yī)院 捐贈協(xié)議書
- 理論中心組學(xué)習(xí)教育交流發(fā)言(五個進(jìn)一步到位)
- 小學(xué)食堂供餐管理方案(3篇)
- 養(yǎng)老院重要環(huán)境因素控制措施
- 藏文教學(xué)課件
- 血透室手衛(wèi)生管理課件
- 企業(yè)產(chǎn)學(xué)研用管理辦法
評論
0/150
提交評論