在Java中使用Swing我寫了一個包含單選按鈕,文本字段等的表單。最後我有一個「提交」按鈕。如何在Java中處理表單?
現在我想「發送」用戶給出的信息給程序。我怎麼做?有沒有一個很好的教程?
它有點像PHP嗎? (我問的只是因爲我知道如何在PHP中做到這一點。爲了避免混淆,我可能需要提到我不編程Web應用程序)。
在Java中使用Swing我寫了一個包含單選按鈕,文本字段等的表單。最後我有一個「提交」按鈕。如何在Java中處理表單?
現在我想「發送」用戶給出的信息給程序。我怎麼做?有沒有一個很好的教程?
它有點像PHP嗎? (我問的只是因爲我知道如何在PHP中做到這一點。爲了避免混淆,我可能需要提到我不編程Web應用程序)。
在Swing中處理數據與典型的Web REQUEST/RESPONSE範例有很大不同。
要了解一些您可能知道的內容,更多的是以HTML頁面中的Javascript操作方式:每次用戶執行操作時,都會發送一個或多個事件,並且應用程序開發人員可以根據它來更新應用程序內容。
在你的情況下,如果你註冊一個ActionListener到按鈕,它會在每次單擊按鈕時被調用。您將有可能執行任何您想要的操作。
但這還不是全部!
每次組件注重鍵盤,或接收鼠標時,都會發送事件,以及按鍵被按下時或小部件模型更新時。
我真的建議你閱讀Swing tutorial這樣的文檔(比我在一個月內可以做的更詳細)。
不完全確定「發送到程序」的含義。你在程序中,所以我假設你有一個呈現這個表單的對話框?只需將對話框傳遞給要用來存儲數據的對象即可。例如,你的對話框的構造函數可以接受一個參數。
public class MyDialog extends JPanel {
private UserInfo userInfo;
private JTextField name;
/**
* The main area of the dialog.
*/
protected JPanel panel;
public MyDialog(UserInfo userInfo) {
this.userInfo = userInfo;
}
public showDialog() {
// Some code to create the form which it looks like you already know how to do
// Create a name field
JLabel nameLabel = new JLabel("Name:");
panel.add(nameLabel);
JButton submit = new JButton("Submit");
submit.addActionListener(new ActionListener() {
public void actionPerformed (ActionEvent event)
{
this.userInfo.setName(name.getText().trim());
} });
panel.add(submit);
}
}