2011-04-29

Eclipse 安裝 VE

Eclipse JEE IDE 安裝 VE  不需要下載安裝的壓所檔,於 Eclipse,工具列 Help → Install New Software
Work with 輸入:
http://download.eclipse.org/tools/ve/updates/1.5.0/

再點擊右邊「Add」,之後出現輸入 Name,可以不要理會,直接按 Enter 即可。

可參考官網:Eclispe Install VE
另外有篇下載 zip  安裝版教學,這個是失敗了,也可以參考一下。

2011-04-27

JLabel 在 JPanel 的排版設定

這問題,花了兩星期,終於搞定…

在 Frame 上利用 JTabbedPane 建立了分頁功能的標簽,各分頁以 JPanel 來作為內容的存放處,其中先放入 JLabel 標簽來作為題目的顯示位置。

在 JLabel 上的文字老是預設出現在 JPanel 的中間
image
改了好幾種方法,設定 JPanel、JLabel 的 location 或 Bounds 都不對。

現在終於釐清,setLayout 的寫法。對 Panel 加上
panels[i].setLayout(new FlowLayout(FlowLayout.LEFT));
這樣就對了!!!
image

觀念就是從實作再修正起的…

2011-04-22

Lenovo Thinkpad 不再「無法連線到 Proxy Server」

用 Thinkpad 數年,只在剛買沒多久、與重新安裝系統時,Thinkpad “System Update” 可正常使用,之後完全失敗,每次都出現「無法連線到 Proxy Server」,逼的我只好固定到官網察看是否有更新。

今天終於在 google 上找到徹底不相信的答案。是 IE 的「區域網路設定」被修改了!!!
這大多是設定本地端 Proxy 時,才去調整,在台灣極少有機會需要設定(在大陸就經常),所以我絕對相信我從未「手動」去設定。但是今天一看,最上面兩項竟然被勾選了!!
看來很有可能是 iPhone 的傑作,因為路徑指向了我的 iPhone 資料夾!或許是  iPhone 使用 WiFi 連線電腦傳送資料才自動設定的。

不過再說回來,System Update 顯示「無法連線 Proxy Server」,實在很難令人想到是自己的設定,字面上很像是  Lenovo 本身的問題才對…。

image

現在可以輕鬆更新了,真是高興。

2011-04-15

serialVersionUID

終於有一篇稍微看得懂的

引用自:关于serialVersionUID和序列化

跟一般的讲,因为在java中serialVersionUID是唯一控制着能否反序列化成功的标志,只要这个值不一样,就无法反序列化成功。但只要这个值相同,无论如何都将反序列化,在这个过程中,对于向上兼容性,新数据流中的多余的内容将会被忽略;对于向下兼容性而言,旧的数据流中所包含的所有内容都将会被恢复,新版本的类中没有涉及到的部分将保持默认值。利用这一特性,可以说,只要我们认为的保持serialVersionUID不变,向上兼容性是自动实现的。


当然,一但我们将新版本中的老的内容拿掉,情况就不同了,即使UID保持不变,会引发异常。正是因为这一点,我们要牢记一个类一旦实现了序列化又要保持向上下兼容性,就不可以随随便便的修改了!!!


但是我有了一个问题:
由此,我想到了Swing当中的组件都可以实现序列化和反序列化。因为它们实现了Serializable接口。可是并不是对于每一个实现了 Serializable接口的类都有serialVersionUID,比如在awt当中的几乎所有的组件都有serialVersionUID,但是在swing当中并没有。


文中有提到:
因为在java中 serialVersionUID是唯一控制着能否反序列化成功的标志,只要这个值不一样,就无法反序列化成功。但只要这个值相同,无论如何都将反序列化,在这个过程中,对于向上兼容性,新数据流中的多余的内容将会被忽略;对于向下兼容性而言,旧的数据流中所包含的所有内容都将会被恢复,新版本的类中没有涉及到的部分将保持默认值。


那么对于swing里面的东西,由于没有显示的写出serialVersionUID,那么系统会经过一些算法得出一个serialVersionUID(?我不确定这一点Tongue)如果这样的话,是否就意味着一旦swing组件一旦有所修改,就不会保持兼容性,也就不能够实现序列化读入读出(新版本对老版本)?Sad

2011-04-06

Eclipse 下 Applet

在 Eclipse 下開發 JAVA Applet 實在順利多了,之前在 JCreator 發生「Applet 未初始化」問題,打敗了我,在 Google 裡翻不著任何線索,明明照著書本裡打的,就是無法成功。換到 Eclipse,易如反掌,一次 OK!

不過要注意的,Eclipse 的 Project 中,.java  原始檔是放在 src 資料夾中。
而 Applet 經過編譯的 .class 存放在 bin 資料夾內。如下圖,

image
記得 .htm 的檔案也要放在這個資料夾來執行嘍。

Eclipse 下自建 Android Project 步驟

1. 新建 Android project
P0330_003
直接選擇「Android Projetc」
P0330_004

2. 名稱相關設定
P0330_005

上圖中,我將各部需要命名的地方,以原始標題命名,分別被設定 WorkSpace 的各位置如下
P0330_006

這些位置在硬碟中 workspace 所管理的資料夾方式又如下
P0330_007

3. 完成 JAVA 撰寫後,另外一些該注意的地方
P0330_009

筆電螢幕顯示的兩個設定

Windows 的 ClearType 設定,對於筆電而言,實在問題很多,不是字太小,就是變模糊,一點都不 Clear。

大多數不是使用筆電的人,對於文字的大小設定基本上都會選擇「12」,但 12 非常不適合筆電,因為筆電螢幕小,字體大就經常要翻頁、看不到完整畫面非常麻煩。
對於筆電我建議將所有字體大小設定為「11」,才能有 1024*768 的感覺。

「新細明體」用在 Firefox 上,網頁看起來多不順眼就不再多提,基本上是無最佳解。
在網路下載到免費的「文鼎 PL 新宋 Mono」字體,該字體比新細明體方正多了,感覺不錯,力推。
將「文鼎 PL 新宋 Mono」用在 FF 上,最小字體設為「15」,其它兩值至少「15」以上,畫面變得融洽多了,更是力推。

再來將 Windows 所有系統字體也全設為「文鼎 PL 新宋 Mono」,效果也不錯!但必須注意一點,「文鼎 PL 新宋 Mono」沒有粗體,如果某些字體有粗體效果則會消失,例如 ThunderBird 郵件目錄表單
imageimage
因此,在視窗設定的選單中
image
「訊息方塊」項目,需使用有粗體的文字,「文鼎 PL 新宋 Mono」就不建議使用了。