私はインターネット上のすべてを見てきましたが、これが私のプログラムにどうして起こっているのか分かりません。 は基本的に私はそれが数字の文字列を作るというTextFieldを作成しようとしています、その文字列を整数に変換され、私はそれはInteger.parseIntを使用すると私のプログラムがクラッシュする
をクラッシュしInteger.parseIntを使用しようとするたびにラベルが数+1 に変更されここに私のコードは
public class dfadsfa {
private JFrame frame;
private JTextField textField;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
dfadsfa window = new dfadsfa();
window.frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
/**
* Create the application.
*/
public dfadsfa() {
initialize();
}
/**
* Initialize the contents of the frame.
*/
String Text;
int Number = Integer.parseInt(Text); //This line Screws it up
private void initialize() {
frame = new JFrame();
frame.setBounds(100, 100, 450, 300);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().setLayout(null);
JLabel lblNumber = new JLabel("");
lblNumber.setBounds(198, 181, 61, 16);
frame.getContentPane().add(lblNumber);
textField = new JTextField();
textField.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Text = textField.getText();
lblNumber.setText(Number+1+"");
}
});
textField.setBounds(163, 140, 130, 26);
frame.getContentPane().add(textField);
textField.setColumns(10);
}
}
ですこれはあなたがいないに関わらず文字列のテキストを持っている
java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:592)
at java.lang.Integer.parseInt(Integer.java:615)
at dfadsfa.<init>(dfadsfa.java:42)
at dfadsfa$1.run(dfadsfa.java:21)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
申し訳ありませんが、_問題を解決するために "それは、クラッシュした" _不十分です。投稿を編集し、完全なスタックトレースを含めるだけでなく、例外をスローするプログラム内の行を特定する必要があります。この場合、検査でエラーが明らかであっても、必要な情報を含めるべきではありません。 –
どのようにクラッシュしますか?エラーメッセージとは何ですか?スタックトレースの共有はどうですか? – dimo414