--- title: JAVA2程式筆記-第16-21章 tags: JAVA2程式筆記 --- #JAVA2程式筆記-第16-21 章 延續在https://medium.com/p/608a1b187e72/edit 的筆記因為放不上了~所以以此為連結 前面的章節放在 https://hackmd.io/@sSA6NW2ZToCxgSaVETWNCg/H1-bOfoK8 --- Chapter 16 Applet-無法操作使用者電腦上的檔案(這個其實我第一次看到,不知道現在還有沒有在用,只是看到2018年還有人在討論,就學一下~有成品感覺比較開心) 從左上角(10,10)的地方顯示字串 要執行Applet要有HTML檔(顯示網頁的標籤語言) 只寫了<applet code="Sample1.class" width=200 height=200> 其他都是HTML5檔自動產生 兩個檔案長這樣+中間是做完下面的結果 ![](https://i.imgur.com/TrT77DT.jpg) 詳細加入Applet viewer請參考 http://javafs.blogspot.com/2017/03/how-to-create-and-run-java-awt-applets.html 不過在intellij裡要先自己加入applet的工具 ![](https://i.imgur.com/KjRMhB8.jpg) 下載完他會自動重開intellij,然後在.java2檔案右鍵會看到edit"sample1" ![](https://i.imgur.com/qO0yR5Z.jpg) 要記得按+getParameter ![](https://i.imgur.com/41nY95J.jpg) 然後按OK ![](https://i.imgur.com/RL5RcJk.jpg) 後面再到.java檔旁按run "咖啡圖案軟體就出現了" --- 與滑鼠產生互動=點到哪/指到哪 ![](https://i.imgur.com/y1yt4Qs.jpg) 程式碼:https://gist.github.com/jzs2home/17c50963b74c2af7a8d6142976bcc375 一樣是滑鼠點的效果,但是程式碼改用adapter ![](https://i.imgur.com/oyl86fX.jpg) --- 加上按鈕:視窗元件AWT(GUI)-這裡發現輸出要是"英文" 不然會變成亂碼 ![](https://i.imgur.com/KORzvcm.jpg) --- 產生動畫效果-數字會自己數到10 ![](https://i.imgur.com/h6h24nV.jpg) 程式碼:https://gist.github.com/jzs2home/157d61c26d12c6f9e4a9faaa4892614f --- Chapter 17 複習重要基礎概念-就是applet --- Chapter 18 類別庫=大家常說的API,2020/5/9已經到JAVA14了 調查類別庫的網址:https://docs.oracle.com/en/java/javase/14/docs/api/index.html --- Chapter 19 Swing的基礎知識:雖然有人說這個沒人在用了,但是我在很多地方(工廠的人機介面/商店的收銀台還是有看到阿~) 只要進行applet就會先進行init()的處理 ![](https://i.imgur.com/BF76mnK.jpg) 放入元件的低方叫"容器" 類別庫的架構叫框架framework applet一定是.java檔+.html檔(要多加入center/applet) ![](https://i.imgur.com/aoffhoV.jpg) 加入配置標籤+指定位置 ![](https://i.imgur.com/Ku37UMC.jpg) 加入事件處理ActionListener=按下按鈕後有反應 ![](https://i.imgur.com/psJFDvf.jpg) 上面的動作改成用滑鼠點(沒有按鍵)-這裡要注意反而是使用extends ![](https://i.imgur.com/WNpbP73.jpg) 滑鼠進出時的程式碼-進入=歡迎光臨/出來=您好 ![](https://i.imgur.com/c3iDySC.jpg) --- Chapter 20 Swing的進階應用 顯示2X2的面板+2X3的面板 ![](https://i.imgur.com/qnhoZoc.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/3dd21e9c28408eed8038104573a46a9f --- 核取方塊:是/不是 ![](https://i.imgur.com/84uEsZE.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/162241aa168ba14d8c5aabf79d835202 --- 單選按鈕 ![](https://i.imgur.com/7fSgTGS.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/d8009a32607d9f30132647762d41122c --- 輸入文字 ![](https://i.imgur.com/aG6QngN.jpg) 程式碼-java檔的: https://gist.github.com/jzs2home/d76b9629674579286428ee7fad611235 --- Chapter 21 Swing的活用技巧 列表-卷軸方格 ![](https://i.imgur.com/Q6qyjZ3.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/39f649fe527ccd1230018a0cb6f56cef --- 組合方塊 ![](https://i.imgur.com/4nr999E.png) 程式碼-java檔的:https://gist.github.com/jzs2home/ebed66c53b4208406738b56d890fbbb8 --- 表格 ![](https://i.imgur.com/g667bkF.jpg) --- 模型-公休星期日/ getRowCount-共幾列/getColumnCount-共幾欄 打得過程中發現df = new SimpleDateFormat("yyyy/MM/dd"); 這句很重要,如果反紅,建議重打,如果沒有這句,就不會出現日期 ![](https://i.imgur.com/dybJLvr.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/46293906589bcfe1a2ba509227f9fcbe --- 選單列:加入分隔符號 mn[1].addSeparator(); 加入選單列mb.add(mn[0]); mb.add(mn[1]); ![](https://i.imgur.com/OFACNaq.png) 程式碼-java檔的:https://gist.github.com/jzs2home/3dcf198e9ebb0d3bb5443fb9fdd27e01 --- 對話框:小視窗再跳出一個小視窗 ![](https://i.imgur.com/Dxs3Zy5.jpg) 程式碼-java檔的:https://gist.github.com/jzs2home/16a43250690c8f09bc8ffd2feb2da3e4 ----小視窗再跳出一個小視窗YES_NO_OPTION+再跳出一個小視窗 ![](https://i.imgur.com/TDjkof9.jpg) +再跳出一個小視窗 ![](https://i.imgur.com/EIMli5C.jpg) 程式碼-java檔的: https://gist.github.com/jzs2home/dc2de3890c734804f394f94377f306fe --- 因為版面有限後面章節連結到:https://hackmd.io/@sSA6NW2ZToCxgSaVETWNCg/r16ElNVc8 --- 我所根據的書:最新Java2程式設計實例入門與活用-超值增訂第四版