TWaver - 專(zhuān)注UI技術(shù)
http://twaver.servasoft.com/
posts - 171, comments - 191, trackbacks - 0, articles - 2
BlogJava
::
首頁(yè)
::
新隨筆
::
聯(lián)系
::
聚合
::
管理
Applet中避免單類(lèi)模式使用UI組件
Posted on 2010-08-29 09:14
TWaver
閱讀(1248)
評(píng)論(0)
編輯
收藏
單類(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ì)丟失。
1
import
java.awt.BorderLayout;
2
import
java.awt.GridLayout;
3
4
import
javax.swing.JApplet;
5
import
javax.swing.JPanel;
6
import
javax.swing.JTextArea;
7
import
javax.swing.border.TitledBorder;
8
9
class
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
19
class
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
28
public
class
TestApplet
extends
JApplet
{
29
30
public
void
init()
{
31
JPanel contentPane
=
new
JPanel(
new
GridLayout(
2
,
1
));
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
}
新用戶(hù)注冊(cè)
刷新評(píng)論列表
只有注冊(cè)用戶(hù)
登錄
后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航:
博客園
IT新聞
Chat2DB
C++博客
博問(wèn)
管理
Powered by:
BlogJava
Copyright © TWaver
日歷
<
2010年8月
>
日
一
二
三
四
五
六
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
公告
TWaver中文社區(qū)
TWaver中文論壇
常用鏈接
我的隨筆
我的文章
我的評(píng)論
我的參與
最新評(píng)論
留言簿
(14)
給我留言
查看公開(kāi)留言
查看私人留言
隨筆檔案
(171)
2017年6月 (1)
2017年5月 (1)
2016年12月 (3)
2016年11月 (6)
2015年5月 (4)
2015年4月 (1)
2015年3月 (4)
2015年2月 (5)
2015年1月 (6)
2014年12月 (2)
2014年11月 (1)
2014年10月 (5)
2014年9月 (5)
2014年8月 (3)
2014年7月 (3)
2014年6月 (1)
2014年5月 (1)
2013年7月 (10)
2013年1月 (2)
2012年12月 (3)
2012年11月 (4)
2012年10月 (2)
2012年9月 (2)
2012年8月 (7)
2012年7月 (3)
2012年6月 (5)
2012年5月 (10)
2012年3月 (6)
2012年2月 (4)
2012年1月 (2)
2011年12月 (3)
2011年10月 (2)
2011年9月 (1)
2011年7月 (2)
2011年3月 (2)
2011年2月 (1)
2010年12月 (3)
2010年11月 (5)
2010年10月 (2)
2010年9月 (19)
2010年8月 (19)
文章檔案
(2)
2015年4月 (1)
2014年6月 (1)
新聞檔案
(1)
2014年9月 (1)
相冊(cè)
TWaver 視頻
搜索
最新隨筆
1.?VR技術(shù)在數(shù)據(jù)中心3D機(jī)房中的應(yīng)用 (下)
2.?VR技術(shù)在數(shù)據(jù)中心3D機(jī)房中的應(yīng)用(上)
3.?HTML5數(shù)據(jù)可視化第四彈:可交互地鐵線(xiàn)路圖
4.?10個(gè)TWaver網(wǎng)頁(yè)3D可視化精彩案例
5.?HTML5數(shù)據(jù)可視化第三彈:萌萌噠拓?fù)鋱D分組
6.?TWaver3D拓?fù)鋱D之人在江湖
7.?TWaver3D拓?fù)鋱D之球花綻放
8.?一款最新的Web 3D開(kāi)發(fā)工具—TWaver Make
9.?兩步創(chuàng)建3D數(shù)據(jù)中心
10.?HTML5數(shù)據(jù)可視化第二彈:打造最美3D機(jī)房
11.?HTML5數(shù)據(jù)可視化第一彈:彩虹爆炸圖
12.?HTML5復(fù)雜拓?fù)鋱D(五) Reingold Tilford樹(shù)
13.?HTML5復(fù)雜拓?fù)鋱D(四) 組織結(jié)構(gòu)圖
14.?HTML5復(fù)雜拓?fù)鋱D(三) 可伸展流程圖
15.?HTML5復(fù)雜拓?fù)鋱D(二) 關(guān)系網(wǎng)圖
最新評(píng)論
1.?re: HTML5復(fù)雜拓?fù)鋱D(五) Reingold Tilford樹(shù)
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--司馬青衫
2.?我們需要TWaver導(dǎo)入導(dǎo)出AutoCAD DXF圖紙功能請(qǐng)問(wèn)哪里有下載開(kāi)發(fā)包?
我們的項(xiàng)目需要TWaver導(dǎo)入導(dǎo)出AutoCAD DXF圖紙功能請(qǐng)問(wèn)哪里有下載開(kāi)發(fā)包?
我的郵箱是:1391211019@qq.com
--曾曉南
3.?re: TWaver Flex生成在Android設(shè)備上的安裝包(apk文件)
評(píng)論內(nèi)容較長(zhǎng),點(diǎn)擊標(biāo)題查看
--婚紗攝影工作室推薦
4.?re: 3D特效之高光反射
這個(gè)有點(diǎn)意思的
--流量村
5.?re: HTML5復(fù)雜拓?fù)鋱D(五) Reingold Tilford樹(shù)
現(xiàn)在一般用第三方的更合理些
--流量村
閱讀排行榜
1.?HTML5 WebSocket 技術(shù)介紹(12095)
2.?TWaver版3D化學(xué)元素周期表(6856)
3.?HTML5復(fù)雜拓?fù)鋱D(五) Reingold Tilford樹(shù)(6706)
4.?如何在MONO 3D尋找最短路路徑(6683)
5.?解析JSON數(shù)據(jù)生成TWaver中的網(wǎng)元(5989)
評(píng)論排行榜
1.?TWaver版3D化學(xué)元素周期表(25)
2.?TWaver html5 + NodeJS + express + websocket.io + redis 快速搭建項(xiàng)目(一)(9)
3.?Mono Design Demo展示(6)
4.?TWaver Flex生成在Android設(shè)備上的安裝包(apk文件)(6)
5.?在MONO Design中使用Flex3D(5)
主站蜘蛛池模板:
亚洲一区二区高清
|
亚洲AV无码乱码在线观看代蜜桃
|
亚洲综合网站色欲色欲
|
亚洲精品免费观看
|
亚洲国产精华液2020
|
在线观看人成视频免费
|
激情婷婷成人亚洲综合
|
久久国产精品萌白酱免费
|
亚洲成av人片天堂网
|
99在线免费观看视频
|
亚洲三级在线视频
|
国产一区视频在线免费观看
|
免费一级毛suv好看的国产网站
|
亚洲av无码成人精品区
|
青青操免费在线观看
|
国产一级一片免费播放i
|
成人免费观看男女羞羞视频
|
国产亚洲精品免费视频播放
|
色噜噜亚洲男人的天堂
|
成年人网站在线免费观看
|
久久亚洲精品成人
|
99精品视频在线视频免费观看
|
久久精品亚洲视频
|
国产又黄又爽又猛免费app
|
成人精品国产亚洲欧洲
|
中文字幕亚洲日韩无线码
|
99久在线国内在线播放免费观看
|
亚洲妇女水蜜桃av网网站
|
国产婷婷高清在线观看免费
|
99视频在线观看免费
|
亚洲AV无码专区在线亚
|
亚洲午夜精品一级在线播放放
|
久久精品免费电影
|
亚洲国产无线乱码在线观看
|
999久久久免费精品播放
|
亚洲人成色77777在线观看
|
久久精品国产亚洲5555
|
99无码人妻一区二区三区免费
|
久久精品亚洲综合
|
国产精品国产午夜免费福利看
|
亚洲国产av玩弄放荡人妇
|