[問(wèn)答題] 本程序中,主窗口有一個(gè)按鈕“顯示對(duì)話框”,點(diǎn)擊該按鈕后顯示一個(gè)對(duì)話框,對(duì)話框的標(biāo)題是“對(duì)話框”,其上有一個(gè)文字標(biāo)簽“這是一個(gè)練習(xí),希望大家都能考個(gè)好
[問(wèn)答題] 本程序中,主窗口有一個(gè)按鈕“顯示對(duì)話框”,點(diǎn)擊該按鈕后顯示一個(gè)對(duì)話框,對(duì)話框的標(biāo)題是“對(duì)話框”,其上有一個(gè)文字標(biāo)簽“這是一個(gè)練習(xí),希望大家都能考個(gè)好成績(jī)”,此時(shí)仍允許對(duì)原來(lái)窗口進(jìn)行操作,當(dāng)關(guān)閉新生成的對(duì)話框時(shí)退出程序。運(yùn)行結(jié)果如圖所示。
注意:請(qǐng)勿改動(dòng)main()主方法和其他已有語(yǔ)句內(nèi)容,僅在橫線處填入適當(dāng)語(yǔ)句。
Import __________;
import java.awt.event.*;
import javax.swing.*;
public class Example2_2 extends Frame implements ActionListener
private Dialog dlg;
private Button but;
public static void main(String argv[])
Example2_2 f = new Example2_2("Example2_2");Panel pan=new Panel();
public Example2_2(String str) super(str);setSize(200,200);
setLayout (new FlowLayout ());
but = new Button("顯示 Dialog");
add (but);
but. addActionListener (this);
dlg = new Dialog(______,"Dialog",false)
正確答案:java.awt.* this
參考解析:本題考查知識(shí)點(diǎn):AWT庫(kù)的使用、AWT與Swing比較。 解題思路:類Example2_2繼承了Frame框架,同時(shí)也是一個(gè)事件監(jiān)聽(tīng)器。這個(gè)監(jiān)聽(tīng)器的事件響應(yīng)結(jié)果為,顯示“dlg”構(gòu)件。構(gòu)造方法中聲明了一個(gè)名為“but”的按鈕構(gòu)件,還聲明了一個(gè)名為dlg的對(duì)話框構(gòu)件。addWindowListener語(yǔ)句為Frame框架的關(guān)閉按鈕添加事件響應(yīng),dlg.a(chǎn)ddwindowListener語(yǔ)句為“dlg”的關(guān)閉按鈕添加事件響應(yīng),這兩個(gè)事件響應(yīng)的結(jié)果都是退出程序。 在使用AWT庫(kù)時(shí),首先需要將AWT庫(kù)引進(jìn)到程序中,包含AWT庫(kù)的包為java.awt.*,即第一個(gè)空的內(nèi)容。 本題中所使用到的構(gòu)件都是AWT的構(gòu)件,AWT中的Dialog類是一個(gè)對(duì)話框類,用于生成對(duì)話框?qū)ο?,它是容器的一種,可以獨(dú)立顯示,但必須依賴于某一父窗口,其依賴性由其構(gòu)造函數(shù)的參數(shù)列表來(lái)體現(xiàn)。本題的第二空就是為Dialog設(shè)定其父窗口,即當(dāng)前的“Example2_2”對(duì)象“f”。 Swing和AWT的主要區(qū)別在于,Swing是AWT為基礎(chǔ)的新技術(shù)。AWT受設(shè)計(jì)初衷的局限,不能滿足圖形化用戶界面的開(kāi)發(fā),比如缺少剪貼板等特性,而且都是重量級(jí)的,需要本地支持。Swing則不然,幾乎都是輕量級(jí)的,不需要操作系統(tǒng)的支持,這是Swing和AWT的最大區(qū)別。
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。