2016-12-27 62 views
0

我在顯示JOptionPane.showMessageDialog上的Jtextfield時遇到了問題。 它顯示類似於 名稱:javax swing.Jtextfield [,0,19,195x20,invalid.layout ......... 節:javax swing.Jtextfield [,0,19,195x20,invalid.layout .. ....... 下面是代碼:在JOptionPane.showMessageDialog上顯示Jtextfield

package quiz_application; 

import java.awt.Component; 
import javax.swing.JOptionPane; 
import javax.swing.JTextField; 
/** 
* 
* @author Christian 
*/ 
public class Quiz_application { 
public static void main(String[] args){ 
/** 
    * Input 
    */ 
JTextField fullName = new JTextField(); 
JTextField section = new JTextField(); 
Object[] message = { 
"Name:", fullName, 
"Section:", section, 
}; 

Component parent = null; 
int option = JOptionPane.showConfirmDialog(parent, message,"User Information", JOptionPane.OK_CANCEL_OPTION); 
if (option == JOptionPane.OK_OPTION) 
{ 
String value1 = fullName.getText(); 
String value2 = section.getText(); 
} 
String outputStr="Name: "+ fullName+"\n" 
    +"Section: "+ section; 

    JOptionPane.showMessageDialog(null, outputStr,"User Information",JOptionPane.INFORMATION_MESSAGE); 
    } 
} 
+0

' 「名稱: 」+全名+「 \ n」'它應該是'「名稱:」+ fullName.getText()+「\ n」' –

+0

請改善標題中的編排 –

回答

0

要打印兩JTextFieldtoString()。我相信只有打印出用戶信息對話框時纔會打印。因此,將if聲明更改爲所有其餘代碼,現在將value1value2更改爲outputStr,而不是fullNamesection。或者,請致電fullName.getText()section.getText()。這樣的:

EX1

String value1 = fullName.getText(); 
String value2 = section.getText(); 
String outputStr = "Name: " + value1 + "\n" + "Section: " + value2; 

EX2

String outputStr = "Name: " + fullName.getText() + "\n" + "Section: " + section.getText(); 

擴展If聲明

if (option == JOptionPane.OK_OPTION) { 
     String value1 = fullName.getText(); 
     String value2 = section.getText(); 

     String outputStr = "Name: " + value1 + "\n" + "Section: " + value2; 

     JOptionPane.showMessageDialog(null, outputStr, "User Information", 
      JOptionPane.INFORMATION_MESSAGE); 
    } 
+0

最後,非常感謝。我確實嘗試將fullName和section更改爲value1和value2,然後發現我將大括號放在了錯誤的位置上。 –

相關問題