作爲序言:我知道代碼很粗糙 - 我上週剛剛選擇了Java,所以我可以讓這個東西跨平臺進行實驗,以至於即使我的學生將OS X機器可以參與研究。CardLayout約束適用於Windows,但不適用於OS X
因此,我已經在大約10臺Windows機器上進行了測試,沒有任何問題,但在OS X上,frame3根本沒有面板顯示(例如只是一個空白幀)。現在我編譯一個OS X的機器上,我看到下面的控制檯輸出:
Exception in thread "main" java.lang.IllegalArgumentException: cannot add to layout: constraint must be a string
at java.awt.CardLayout.addLayoutComponent(CardLayout.java:190)
at java.awt.Container.addImpl(Container.java:1072)
at java.awt.Container.add(Container.java:363)
at Reflexology1.<init>(Reflexology1.java:150)
at Reflexology1.main(Reflexology1.java:51)
代碼公佈在http://pastebin.com/t3vqa0s6
有誰知道什麼可能導致僅OS X下這個問題?
我會檢查Java的運行時版本。 – 2012-10-31 22:40:03
爲什麼要將佈局設置爲空? – Bill