2012-02-01 46 views
1

我想從一個文本框中獲取用戶輸入信息,以便我可以通過用戶輸入來計算球的位移。通過Java中的JTextField獲取用戶輸入?

我想這

double initialvelocity = new JTextBox("enter your initial velocity"); 

所以我有,我可以使用的數據的變量。我只是無法讓它工作,這是我的第一個正確的Java項目的障礙。

任何人都可以建議如何獲得一個變量來存儲數據使用JTextField還是有其他的選擇嗎?

+0

你的意思了JTextField,也許代碼示例中? – 2012-02-01 21:01:23

回答

8

一個JTextField應存放這樣的:

JTextField v0TextField = new JTextField ("initial velocity"); 

而且當你要訪問的文本框中輸入當前字符串:

String strV0TextBox = v0TextField.getText(); 

然後你要解析爲這雙:

double initialvelocity = Double.parseDouble(strV0TextField); 
+0

+1擊敗了我。 – RanRag 2012-02-01 21:02:35

+1

爲什麼這個怪異的變量命名? 'initialVelocityTextField','initialVelocityString'和'initialVelocity'怎麼樣? – 2012-02-01 21:04:58

+0

乾杯欣賞幫助 – user1183685 2012-02-01 21:13:11

2

使用JTextField正確的方法是

JTextField box = new JTextField(" Enter Initial Velocity"); 
String velocity_str = box.getText(); 

比解析成一個雙

double initialvelocity = Double.parseDouble(velocity_str); 
5

如果你只是想從用戶最簡單的方法是使用一個對話框讓輸入:

double value = Double.parseDouble(
      JOptionPane.showInputDialog("please enter value")); 
+1

ohh多謝..你是一個天才 – user1183685 2012-02-01 21:34:30

+3

哈哈,不是真的。順便請接受一個答案,如果它解決了你的問題,請。 – 2012-02-01 21:53:55

2

請參見本教程的使用jTextField here

要實例如框:

JTextField myTextField = new JTextField("enter your initial velocity"); 

    //Probably should do some kind of validation on the input if you only want numbers 
    //get The Text and parse it as a double 
    double initVelocity = Double.parseDouble(myTextField.getText()); 
+0

我得到的字符串類型不匹配,因爲字符串和double不能加在一起 – user1183685 2012-02-01 21:25:49

+0

@ user1183685更新爲包含字符串以進行雙重轉換。 – sinemetu1 2012-02-01 21:57:40