テキストボックスの値が変数に代入できない(2)
お早うございます。
java初心者です、宜しくお願いします。
下記のような、アプレットのテキストボックスから値をとり
計算結果を表示するプログラムを書いてやりましたが、
値(実数値)がうまく変数に代入されていません。
この原因が分かりません、どこが悪いのか皆様方のご教示宜しくお願いいたします。
文法上のエラーは出ていません、AWTとswingとの混在は理解は出来ていますが、それとは別の箇所で原因があると思いますが、解決できません、宜しくお願いいたします。
==============================================================================
try
{
lon = Double.parseDouble(jta00.getText()) ;
sita = Double.parseDouble(jta0.getText()) ;
Zb = Double.parseDouble(jta1.getText()) ;
Zg = Double.parseDouble(jta2.getText()) ;
arfa = Double.parseDouble(jta3.getText()) ;
Gf = Double.parseDouble(jta4.getText()) ;
Vo = Double.parseDouble(jta5.getText()) ;
}
catch(Exception ee)
{
System.out.println( "lon = " + lon ) ;
System.out.println( "sita = " + sita ) ;
System.out.println( "Zb = " + Zb ) ;
System.out.println( "Zg = " + Zg ) ;
System.out.println( "arfa = " + arfa ) ;
System.out.println( "Gf = " + Gf ) ;
}
//Lavelの作成(TextFieldの右側記事欄)
Label lb_longth2 = new Label("(延長(m))");
lb_longth2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_sita2 = new Label("(傾斜)");
lb_sita2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_Zb2 = new Label("(区分係数)");
lb_Zb2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_Zg2 = new Label("(区分係数)");
lb_Zg2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_arfa2 = new Label("(区分係数)");
lb_arfa2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_Gf2 = new Label("(区分係数)");
lb_Gf2.setFont(new Font("SansSerif",Font.BOLD,17));
Label lb_Vo2 = new Label("(速度(m/s))");
lb_Vo2.setFont(new Font("SansSerif",Font.BOLD,17));
//TextAreaの書式設定と貼付け、Lavelの貼付け
jta00.setBackground(Color.white);
jta00.setForeground(Color.red);
jta00.setFont(new Font("Dialog",Font.PLAIN,20));
jta00.setBounds(90,125,100,30) ; //Panel Width
lb_longth2.setBounds(200,125,250,20);
add(jta00);
add(lb_longth2); //(延長(m))
jta0.setBackground(Color.white);
jta0.setForeground(Color.red);
jta0.setFont(new Font("Dialog",Font.PLAIN,20));
jta0.setBounds(90,160,100,30) ; //sita
lb_sita2.setBounds(200,165,250,20);
add(jta0);
add(lb_sita2); //(傾斜(度))
jta1.setBackground(Color.white);
jta1.setForeground(Color.red);
jta1.setFont(new Font("Dialog",Font.PLAIN,20));
jta1.setBounds(90,200,100,30) ; //Zb
lb_Zb2.setBounds(200,205,170,20);
add(jta1);
add(lb_Zb2); //係数
jta2.setBackground(Color.white);
jta2.setForeground(Color.red);
jta2.setBounds(90,240,100,30); //Zg
jta2.setFont(new Font("DialogInput",Font.BOLD,20));
lb_Zg2.setBounds(200,245,170,20);
add(jta2);
add(lb_Zg2);//係数
jta3.setBackground(Color.white);
jta3.setForeground(Color.red);
jta3.setBounds(90,280,100,30); //arfa
jta3.setFont(new Font("Monospaced",Font.ITALIC,20));
lb_arfa2.setBounds(200,285,170,20);
add(jta3);
add(lb_arfa2);//係数
jta4.setBackground(Color.white);
jta4.setForeground(Color.red);
jta4.setFont(new Font("Serif",Font.PLAIN,20));
jta4.setBounds(90,320,100,30); //Gf
lb_Gf2.setBounds(200,325,170,20);
add(jta4);
add(lb_Gf2);
jta5.setBackground(Color.white);
jta5.setForeground(Color.red);
jta5.setFont(new Font("sansserif",Font.BOLD,25));
jta5.setBounds(90,360,100,30); //Vo
lb_Vo2.setBounds(200,365,170,20);
add(jta5);
add(lb_Vo2);
}
public void actionPerformed(ActionEvent ae)
{
Cwu = 0.65 + 0.009 * sita ; //Follow Window
Cwd = 0.71 + 0.016 * sita ; //Against Window
Double Er0 = 1.7 * Math.pow(( Zb / Zg ) , arfa ) ;
Er2= Er0 * Er0 ;
E = Er2 * Gf ;
q = 0.6 * E * Vo * Vo ;
Wu = q * Cwu ;
Wd = q * Cwd ;
System.out.println("Wu = " + Wu ) ;
System.out.println("Wd = " + W
お礼
お礼が遅れましてすみません。。。 ご回答ありがとうございます。 確かに洗練された人工的に上品な感じがしますね。 人の手であるから『進歩性』がある、という言葉にハッとしました。