[問題] 關於Windowing

看板java作者 (BlackMatrix)時間16年前 (2010/02/20 11:52), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串1/5 (看更多)
最近教授有教怎麼做出簡單&上面有按鈕的程序 那...教授叫我們做出一個程序 有八個按鈕, 然後一開始程序就會設定每種按鈕的顏色, 然後點擊按鈕的時候會變換 那個被點擊的按鈕的框框會自動改變隨機的顏色. /////////想像//////// START 以下是想像的程序碼 int x = 0; if x = 1 那就是我第一個按鈕 就是設定一個Counter, 像我的程序碼一樣, 然後每一個數字代表一個JButton 就是如果counter ++, 那麼counter在2的時候就是會自動的等於我的JButton 再利用X.setBackground(XXXX顏色), 可是因為我知道教授給我的數目是八個 所以我就利用JButton one, two, three four到eight 萬一教授沒有指定框框數目可是又要求我們把每一個框框隨機不同顏色,點擊不同 的顏色怎麼辦? 簡單來說, 要怎麼設定N個框框, 隨機顏色很簡單, 可是還有另一個重點就是 ActiveListener的GetSource要怎麼把他設定成只要是我剛剛設定的N個框框要是被點擊 就會自動改變顏色? /////////想像//////// END 可是問題是我不會讓X = 1 等於一個JButton 所以我就寫出以下的程序, 可以完成老師要求的事, 可是我不知道有什麼更簡單的方法 可以做出相同的事情 Frame: http://nopaste.csie.org/211d0 Main: http://nopaste.csie.org/50a20 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 173.56.121.140 ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 14:52) ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 14:54) ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 14:57)

02/20 16:24, , 1F
JButton[] jbs=new JButton[10]; jbs[0]=new JButton();
02/20 16:24, 1F
謝謝TonyQ和Qrtt1的提示 改變Part A: 把RandomInt == 1等於一個顏色利用陣列代替掉 Frame: http://nopaste.csie.org/1fd94 ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 17:28) 感謝TonyQ和Qrtt1教我怎麼使用陣列跟InstanceOf, 成功減少Code至少800-900行 改變Part B: 利用Instance Of減少反覆的Code Frame: http://nopaste.csie.org/59aae ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 17:36) 再次感謝TonyQ和Qrtt1教我的方法 改變Part C: 利用陣列和一些ActionPerformed的技巧, 我的Code從1100行到113行 Frame: http://nopaste.csie.org/b01a2 ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 17:50) 基本上都完成了 最後感謝TonyQ, Qrtt1, PsMonkey能夠專心把我寫得很爛的文章和程序看完 也謝謝你們能夠糾正我的錯誤 ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 17:58) ※ 編輯: BlackMatrix 來自: 173.56.121.140 (02/20 17:59)
文章代碼(AID): #1BVroBjx (java)
文章代碼(AID): #1BVroBjx (java)