乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      Java:Applet布局問題 合肥Java培訓(xùn)

       昵稱15907169 2014-05-13

        applet布局問題一直都是JAVA培訓(xùn)課程中的比較重要的知識(shí)點(diǎn),那按鈕、標(biāo)簽是怎樣加入到applet程序(容器)當(dāng)中去的呢?
        需要用到布局容器管理器(LayoutManager):它用于協(xié)助容器確定加入的組件(按鈕等)應(yīng)該放置的位置
        awt提供了4中常用的布局容器管理器
        >>FlowLayout
        >>BorderLayout
        >>GridLayout
        >>CardLayout
        applet默認(rèn)使用FlowLayout,applet使用容器管理器的方法如下:
        setLayout (new BorderLayout)
        setLayout()方法是applet類繼承Container類中的方法而來,因此在applet程序中可以直接調(diào)用
        applet加入按鈕一定需要上面的容器管理器么?
        不一定,可以先 setLayout(null); 然后自己確定組件放置的細(xì)節(jié),代碼麻煩。
        如果你不用布局管理器(Jframe中的用法):
        JButton    b1    =    new    JButton("hello");
        getContentPane().add(b1);
        b1.setLocation(100,10);
        以下是容器管理器常用的4種布局寫法
        =================================================
        applet 使用 FlowLayout 布局:
        指定布局:setLayout(new FlowLayout())
        加入組件:add(組件實(shí)例)
        作用:由左到右,由上到下依次放置組件
        加入組件使用applet類繼承Container類中的方法成員add();
        =================================================
        import java.awt.*;
        import java.applet.*;
        public class UseFlowLayout extends Applet{
        public void init()
        {
        setLayout(new FlowLayout()); //因?yàn)槭悄J(rèn)管理器,可以省略
        //setLayout()方法是applet類繼承Container類中的方法而來,因此在applet程序中可以直接調(diào)用
        for(int i = 0; i<5;i++){
        add(new Button("按鈕" + i )); //加入5個(gè)按鈕
        //applet類繼承Container類中的方法成員add();
        }
        }
        }
        ==================================================
        applet使用BorderLayout();
        指定布局:setLayout(new BorderLayout());
        加入組件:add(組件實(shí)例,位置常量)
        作用:此種布局將容器劃分為5個(gè)區(qū)域,分別是上、下、左、右、中
        [位置常量]指定了組件將要放置的位置,
        如果組件不足5個(gè),放在中間位置的組件將自動(dòng)填充空余位置
        ==================================================
        import java.awt.*;
        import java.applet.*;
        public class UseBorderLayout extends Applet{ //接口Applet
        public void init()
        {
        setLayout(new BorderLayout()); //因?yàn)槭悄J(rèn)管理器,可以省略
        add(new Button("按鈕上"),BorderLayout.NORTH);
        add(new Button("按鈕右"),BorderLayout.EAST);
        //?setHgap(50);想設(shè)置組件的水平和垂直的邊距,看下面的GridLayout使用方法
        add(new Button("按鈕中"),BorderLayout.CENTER);
        //add(new Button("按鈕下"),BorderLayout.SOUTH) //引上是為了測(cè)試自動(dòng)填充效果
        //add(new Button("按鈕左"),BorderLayout.WEST) //引上是為了測(cè)試自動(dòng)填充效果
        }
        }
        ==================================================
        applet使用GridLayout();
        指定布局:setLayout(new GridLayout(列數(shù),行數(shù)))
        加入組件:add(組件實(shí)例)
        作用:左-->右,上-->下,分成指定的網(wǎng)格
        ==================================================
        import java.awt.*;
        import java.applet.*;
        public class UseGridLayout extends Applet{ //接口Applet
        public void init()
        {
        //setLayout(new GridLayout(3,4));           //書上的寫法,我的寫法如下:
        //聲明一個(gè)布局管理器:為表格形式 3行 4列
        GridLayout GL = new GridLayout(3,4);
        GL.setHgap(20);     //設(shè)置組件的水平和垂直的邊距
        GL.setVgap(20);
        this.setLayout(GL);         //是哪個(gè)類對(duì)象的方法?!是this:當(dāng)前applet
        //加入按鈕
        for(int i=0;i<12;i++)
        {
        this.add(new Button("按鈕" + i)) ;
        //add方法是哪個(gè)類對(duì)象的?!也是當(dāng)前面板的方法
        }
        }
        }
        =========================================================
        +applet使用 CardLayout容器管理器
        指定容器管理器:setLayout(new CardLayout())
        加入組件:add(組件實(shí)例,"指定組件名稱")
        顯示組件:CL.show(this."button1"),next,previous,first
        作用:組件加入容器applet中,然后按照需要調(diào)出,被調(diào)出的組件遮蓋本容器內(nèi)的所有組件
        。。。注意,applet是容器,但不是唯一的,applet還可以加入多個(gè)容器!詳細(xì)內(nèi)容明天再學(xué)
        =========================================================
        import java.awt.*;
        import java.applet.*;
        public class UseCardLayout extends Applet{ //接口Applet
        public void init()
        {
        //指定當(dāng)前applet布局管理器為CardLayout.
        CardLayout CL = new CardLayout();
        setLayout(CL);
        //加入按鈕
        for(int i=0;i<12;i++)
        {
        add(new Button("按鈕" + i),"button" + i) ;
        }
        CL.show(this,"button11");       //將指定按鈕顯示出來
        CL.next(this);        //轉(zhuǎn)到下一個(gè)按鈕,這里說明循環(huán)顯示的效果,顯示出是button0;
        //還有CL.first(this)等方法==如:last,previous,next,first,顯示指定的就用上面的方法
        }
        }
        以上是applet作為容器,需要用到的最常用的組件布局辦法
        實(shí)際上一個(gè)容器還可以使用多個(gè)LayoutManager,
        用Panel!
        Panel屬于awt組件的容器類,也就是說它可以用來放置其他的awt組件,
        她的重要特點(diǎn)就是:擁有獨(dú)立的坐標(biāo)系統(tǒng)和layoutmanager.
        Panel 與 LayoutManager結(jié)合可以做出更符合需要的applet界面!
        ---附applet測(cè)試頁面
        <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
        <HTML>
        <HEAD>
        <TITLE> New Document </TITLE>
        <META NAME="Generator" CONTENT="EditPlus">
        <META NAME="Author" CONTENT="">
        <META NAME="Keywords" CONTENT="">
        <META NAME="Description" CONTENT="">
        </HEAD>
        <BODY>
        <applet code="UseBorderLayout.class" width=400 height=300></applet>
        </BODY>
        </HTML>
        紅色部分替換成相應(yīng)的布局類

        本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評(píng)論

        發(fā)表

        請(qǐng)遵守用戶 評(píng)論公約

        類似文章 更多