我們用兩個窗口編寫了一個遊戲:MainMenu和Playfield。當你點擊MainMenu開始 - Playfield打開。在MainMenu中有兩個JTextfields,兩個玩家可以輸入他們的名字。目前2個JTextfields沒有任何功能。如何在一個框架中獲取用戶輸入並在另一個JFrame中獲取輸出?
現在的問題是:我們想得到這個名字,我們希望存儲它們,直到有人贏了,贏了後我們想輸出類似「xy wins!」的東西。在對話框中。我們如何在兩個窗口中實現?
我們用兩個窗口編寫了一個遊戲:MainMenu和Playfield。當你點擊MainMenu開始 - Playfield打開。在MainMenu中有兩個JTextfields,兩個玩家可以輸入他們的名字。目前2個JTextfields沒有任何功能。如何在一個框架中獲取用戶輸入並在另一個JFrame中獲取輸出?
現在的問題是:我們想得到這個名字,我們希望存儲它們,直到有人贏了,贏了後我們想輸出類似「xy wins!」的東西。在對話框中。我們如何在兩個窗口中實現?
窗戶只是您的意見,向用戶展示/獲取一些信息。 您需要將輸入到MainMenu中的數據存儲在兩個框架可以訪問的某個模型classm中。
無論您的文本框在哪個Frame中以及要在哪個Frame中打印輸出 - 組件層次(即哪個組件在哪個容器中)與處理輸入和輸出無關。
在這種特殊情況下,您必須收聽一個事件,告知您JTextFields
已收到輸入。這可能是
JTextFields
JTextField
(即textfield.getDocument().addDocumentListener(...)
)DocumentListener
一個的changedUpdate /中的insertUpdate /中的removeUpdate事件註冊的FocusListener
一個focusLost事件用戶點擊以確認其輸入的JButton
的ActionEvent一旦您收到該事件,您將檢索文本來自JTextfield,將其存儲在合適的變量/字段中,然後用它填充對話框中顯示的文本消息。
我認爲您需要對「模型 - 視圖 - 控制器」進行一些研究,以更好地理解數據如何在類之間共享 – MadProgrammer