<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    TWaver - 專(zhuān)注UI技術(shù)

    http://twaver.servasoft.com/
    posts - 171, comments - 191, trackbacks - 0, articles - 2
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理
    單類(lèi)為了啥:保證實(shí)例唯一;提供全局函數(shù);減少內(nèi)存消耗;…. 也許還有很多很多用途,不過(guò)在Applet的使用中一定要避免UI組件單類(lèi)的設(shè)計(jì)模式:

     

    1、主要原因是如果Applet被重新加載,也就是點(diǎn)擊瀏覽器的刷新按鈕,或者在同一個(gè)瀏覽器下關(guān)閉Applet再打開(kāi)的情況下,新的Applet將以新的Swing toolkit threads對(duì)鍵盤(pán)事件進(jìn)行處理,這樣以前緩存的單UI實(shí)例組件將再也接收不到鍵盤(pán)事件。http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4339842

     

    2、當(dāng)然還有另外一個(gè)問(wèn)題就是Swing的組件只能在一個(gè)容器中呈現(xiàn),無(wú)法讓兩個(gè)容器同時(shí)展示同一個(gè)UI組件,簡(jiǎn)單的理解就是說(shuō)如果你在一個(gè)瀏覽器中新開(kāi)一個(gè)同session的窗口將會(huì)導(dǎo)致只有一個(gè)窗口能顯示單類(lèi)的組件,另一個(gè)的UI組件將會(huì)丟失。

     

     1import java.awt.BorderLayout;
     2import java.awt.GridLayout;
     3
     4import javax.swing.JApplet;
     5import javax.swing.JPanel;
     6import javax.swing.JTextArea;
     7import javax.swing.border.TitledBorder;
     8
     9class SinglePanel extends JPanel{
    10 private final static SinglePanel instance = new SinglePanel();
    11 public static SinglePanel getInstance(){
    12  return instance;
    13 }

    14 private SinglePanel(){
    15  TestApplet.initPanel(this"single panel");
    16 }

    17}

    18
    19class MultiPanel extends JPanel{
    20 public static MultiPanel getInstance(){
    21  return new MultiPanel();
    22 }

    23 public MultiPanel(){
    24  TestApplet.initPanel(this"multi panel");
    25 }

    26}

    27
    28public class TestApplet extends JApplet {
    29
    30    public void init() {
    31     JPanel contentPane = new JPanel(new GridLayout(21));
    32     contentPane.add(SinglePanel.getInstance());
    33     contentPane.add(MultiPanel.getInstance());
    34     this.setContentPane(contentPane);
    35    }

    36
    37 public static void initPanel(JPanel panel, String title){
    38  panel.setLayout(new BorderLayout());
    39  panel.setBorder(new TitledBorder(title));
    40  panel.add(new JTextArea(), BorderLayout.CENTER);
    41 }

    42}

    只有注冊(cè)用戶(hù)登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 亚洲精品无码久久毛片| 九九热久久免费视频| 亚洲第一区香蕉_国产a| 精品无码国产污污污免费| 一级毛片免费毛片一级毛片免费| 免费人成视频在线播放| 国产亚洲福利在线视频| 99人中文字幕亚洲区| 亚洲色大成网站WWW久久九九| 在线观看亚洲免费视频| 在线看片无码永久免费视频| 4444www免费看| 免费成人在线电影| 久久免费观看视频| 人禽伦免费交视频播放| 色噜噜的亚洲男人的天堂| 亚洲AV无码一区二区三区久久精品| 亚洲妓女综合网99| 久久精品国产亚洲AV嫖农村妇女| 亚洲精品无码久久久久| 亚洲成A人片77777国产| 日韩精品成人亚洲专区| 国产成人aaa在线视频免费观看| 成年女性特黄午夜视频免费看| 在线日本高清免费不卡| 91人成网站色www免费下载| 少妇太爽了在线观看免费视频| 成人性做爰aaa片免费看| 香蕉免费看一区二区三区| 国产高清视频免费在线观看| 一级成人a做片免费| 一个人看的免费高清视频日本 | 四虎影视成人永久免费观看视频| av网站免费线看| 中国精品一级毛片免费播放| 中文字幕在线免费播放| 好久久免费视频高清| 日韩精品无码免费一区二区三区| 久久aa毛片免费播放嗯啊| 美丽的姑娘免费观看在线播放| 91短视频免费在线观看|