[問答題] 下列程序使用CardLayout管理了2張卡片,每張都是一個Panel,每個Panel有一個Button,單擊按鈕,顯示下一張卡片中的內(nèi)容。請將程序
[問答題] 下列程序使用CardLayout管理了2張卡片,每張都是一個Panel,每個Panel有一個Button,單擊按鈕,顯示下一張卡片中的內(nèi)容。請將程序補充完整。
注意:不改動程序結(jié)構(gòu),不得增行或刪行。
import java.awt.*;
import java.awt.event.*;
public class ex3 implements______
private Panel p1,p2;
private Button btn1,btn2;
private Frame frm;
private CardLayout cl;
public static void main(String[] args)
ex3 tt=new ex3();tt.method();
public void method() Frm=new Frame("CardLayout");Cl=new CardLayout();
btn1=new Button("Card1");
btn2=new Button("Card2");
pl=new Panel();
p2=new Panel();
p1.add(btn1);
btn1.addActionListener(this);
p2.add(btn2);
______
frm.SetLayout(cl);
frm.add(pl,"Layer1");
frm.add(pl,"Layer1");
frm.SetSize200,200);
正確答案:ActionListener btn2.addActionListener(this); cl.previous(frm);
參考解析:[講解] 本題綜合考查了對圖形用戶界面和事件處理的掌握。按鈕可以引發(fā)動作事件, 當用戶單擊一個按鈕時就引發(fā)了一個動作事件,希望相應(yīng)按鈕引發(fā)的動作事件的程序必須把按鈕注冊給實現(xiàn)了ActionListener接口的動作事件監(jiān)聽者。因此,第1空應(yīng)填入的是ActionListener。第2空的功能是將btn2注冊給當前的監(jiān)聽者。因此,第2空應(yīng)填入的是btn2.addActionListener(this);。第3空需要填入的是響應(yīng)鼠標事件的處理代碼,當單擊鼠標時,要顯示下一張卡片中的內(nèi)容,則需要調(diào)用next(Container parent)或者previous(Container parent)方法。因此,第3空應(yīng)填入的是cl.next(frm);或cl.previous(frm);。
詞條內(nèi)容僅供參考,如果您需要解決具體問題
(尤其在法律、醫(yī)學等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。