-1

colorchooser のヘルプをお願いします。では、3 つのテキスト フィールドに rgb color lite 255,255,0 と入力します。次に、それらをintに変換し、最後に背景色を変更する必要があります。問題は、[OK] ボタンをクリックするとエラーが発生することです。

public void actionPerformed(ActionEvent e) {
    if(e.getSource()==ok){
        int rgb = Integer.parseInt (text1.getText());
        int rgb1 = Integer.parseInt (text2.getText());
        int rgb2 = Integer.parseInt (text3.getText());
        v.setBackground(new Color(rgb, rgb1, rgb2));
}

これにより、スレッド「AWT-EventQueue-0」で例外が発生します java.lang.NumberFormatException: For input string: "" at java.lang.NumberFormatException.forInputString(Unknown Source)

4

2 に答える 2

3

あなたのlogcatは、空の文字列を整数に変換しようとしていることを明確に示しています。

AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""

つまり、あなたは通り過ぎています

int color=Integer.parseInt("");  // this cause exception.

テキストフィールドに数字が含まれていることを確認してください。 、それらの検証を提供します。

于 2013-03-21T13:09:31.877 に答える
0

text1/text2/text3 テキスト変数をデバッグしてみて、実行時に何が保持されているかを確認してください。それでも問題が解決しない場合は、変数を設定して、SetBackground が想定どおりに機能することを確認してください。

于 2013-03-21T13:38:10.380 に答える