テキストボックスの値が変数に代入できない

このQ&Aのポイント
  • java初心者です、宜しくお願いします。
  • アプレットのテキストボックスから値をとり計算結果を表示するプログラムを書いてみましたが、値(実数値)がうまく変数に代入されていません。
  • 解決できません、宜しくお願いいたします。
回答を見る
  • ベストアンサー

テキストボックスの値が変数に代入できない(1)

お早うございます。 java初心者です、宜しくお願いします。 下記のような、アプレットのテキストボックスから値をとり 計算結果を表示するプログラムを書いてやりましたが、 値(実数値)がうまく変数に代入されていません。 この原因が分かりません、どこが悪いのか皆様方のご教示宜しくお願いいたします。 文法上のエラーは出ていません、AWTとswingとの混在は理解は出来ていじますが、それとは別の箇所で原因があると思いますが、解決できません、宜しくお願いいたします。 字数制限で二回の投稿となりますが、宜しくお願いいたします。 ================================================== public class WPCulc extends Applet implements ActionListener { Double Wu , Wd , Wul , Wdl = 0.0 ; Double q , Cwu , Cwd = 0.0 ; Double sita = 0.0 ; Double lon = 0.0 ; Double E , Vo = 0.0 ; Double Er2 , Gf = 0.0 ; Double Zb , Zg , arfa = 0.0 ; public void init() { setLayout(null) ; //一番上の文字 Label lb = new Label("Culc WP"); lb.setFont(new Font("SansSerif",Font.BOLD,20)); lb.setBackground(new Color(0xff9999)); Color c = Color.blue; //カラーを指定 lb.setForeground(c); //ラベルの前景色 lb.setBounds(25 , 40 , 250 ,50) ; add(lb); //longth(延長) Label lb_longth = new Label("L"); lb_longth.setFont(new Font("SansSerif",Font.BOLD,20)); lb_longth.setBackground(new Color(0xff9999)); lb_longth.setBounds(40 ,120 , 30 ,30) ; add(lb_longth) ; //θ Label lb_sita = new Label("θ"); lb_sita.setFont(new Font("SansSerif",Font.BOLD,20)); lb_sita.setBackground(new Color(0xff9999)); lb_sita.setBounds(40 ,160 , 30 ,30) ; add(lb_sita); //Zb Label lb_Zb = new Label("Zb"); lb_Zb.setFont(new Font("SansSerif",Font.BOLD,20)); lb_Zb.setBackground(new Color(0xff9999)); lb_Zb.setBounds(40 , 200 , 30 ,30) ; add(lb_Zb); //Zg Label lb_Zg = new Label("Zg"); lb_Zg.setFont(new Font("SansSerif",Font.BOLD,20)); lb_Zg.setBackground(new Color(0xff9999)); lb_Zg.setBounds(40 , 240 , 30 ,30) ; add(lb_Zg); //arufa Label lb_arfa = new Label("α"); lb_arfa.setFont(new Font("SansSerif",Font.BOLD,20)); lb_arfa.setBackground(new Color(0xff9999)); lb_arfa.setBounds(40 , 280 , 30 ,30) ; add(lb_arfa); lb.setBounds(25 , 40 , 250 ,50) ; //Gf Label lb_Gf = new Label("Gf"); lb_Gf.setFont(new Font("SansSerif",Font.BOLD,20)); lb_Gf.setBackground(new Color(0xff9999)); add(lb_Gf); lb_Gf.setBounds(40 , 320 , 30 ,30) ; //Vo Label lb_Vo = new Label("Vo"); lb_Vo.setFont(new Font("SansSerif",Font.BOLD,20)); lb_Vo.setBackground(new Color(0xff9999)); add(lb_Vo); lb_Vo.setBounds(40 , 360 , 30 ,30) ; //Button(InputDataの確認) Button bt = new Button("InputDataの確認"); bt.addActionListener(this); bt.setFont(new Font("SansSerif",Font.BOLD,20)); Color d = new Color(0xff00ff); //カラーを指定 bt.setBackground(d); //ボタンの背景色 bt.setForeground(new Color(0.0f, 0.0f, 0.0f)); //floatで指定 bt.setBounds(60,430,220,40); add(bt); //TextFieldの始まり(Fieldの作成のみとDataの取得) //InputDataの表示(addせず) TextField tf = new TextField("InputData"); Color e = new Color(255,255,255); //カラーを指定 tf.setBackground(e); Color f = new Color(0,255,0); tf.setForeground(f); tf.setBounds(55,130,180,20); // add(tf); JTextField jta00 = new JTextField("");//long JTextField jta0 = new JTextField("");//sita JTextField jta1 = new JTextField("");//Zb JTextField jta2 = new JTextField("");//Zg JTextField jta3 = new JTextField("");//α JTextField jta4 = new JTextField("");//Gf JTextField jta5 = new JTextField("");//Vo 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()) ; }

  • Java
  • 回答数1
  • ありがとう数11

質問者が選んだベストアンサー

  • ベストアンサー
  • hitomura
  • ベストアンサー率48% (325/664)
回答No.1

……ごめん、長すぎる。 あなたが聞きたい「値(実数値)がうまく変数に代入されていません」を伝えるのにテキストボックスは 1 つで十分なはずですし、フォントや色は関係ないはずです。 というかこのコードをもとに、テキストボックスが 1 つだけの、入力された値をそのまま表示することを意図したコードが作れるはずです。そのように問題を簡略化して自分が思った通りにいくかどうかを試して、簡略化したコードを使って質問してください。 まあ、init() の中で getText() しているのは明らかにおかしいんですけど。

関連するQ&A

  • テキストボックスの値が変数に代入できない(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

    • ベストアンサー
    • Java
  • テキストボックス、ボタンが見えません、画像の影響で

     Java初心者です、宜しくお願いします。  アプレットに画像とテキストボックス、ボタンを張り付ける プログラムを書きましたが、実行すると画像を張り付けているためか、 テキストボックスが指定した大きさに見えず、せいぜい1文字程度の 大きさにしか表示されません。  また、ボタンも実行後には見えない状態で、マウスでクリックする と見えるようになります。  最初から、指定した大きさで、テキストボックス、ボタンを表示させる方法は あるのでしょうか。  また、別のクラスでパネルに色をつけていますが、全く実行されて いないようです。  この原因が分かりません、何故でしょうか。  以上宜しくお願いします。 ======================================================== public class Sample1 extends JApplet { private static final long serialVersionUID = 1L; MediaTracker tracker ; Image img ; Text1 t1 ; public void init() { Container cnt = getContentPane( ); setLayout( null ) ; t1 = new Text1( ) ; t1.init( ) ; cnt.add( t1 ) ; tracker = new MediaTracker( this ) ; img = getImage( getDocumentBase() , "../a.jpg" ) ; tracker.addImage( img , 0 ) ; } public void start() { try { tracker.waitForAll(); } catch (InterruptedException e) { } } public void paint( Graphics g ) { g.drawImage( img , 50 , 50 , 300 , 300 , this ) ; } } //=================================================================== class Text1 extends JPanel { private static final long serialVersionUID = 1L ; JTextField jtf ; public void init( ) { setLayout( null ) ; setBackground( Color.yellow ) ; setBounds( 30 ,30 ,500 , 500 ) ; jtf = new JTextField( "abcde" ) ; jtf.setBounds( 150 , 150 , 100 , 30 ) ; add( jtf ) ; JButton jbt = new JButton( "Check" ) ; jbt.setFont( new Font( "SansSerif" , Font.BOLD , 20 ) ) ; jbt.setBackground( Color.red ) ; jbt.setForeground( Color.blue ) ; jbt.setBounds( 100 , 200 , 220 , 40 ) ; this.add( jbt ) ; } }

    • ベストアンサー
    • Java
  • アプレットにテキストボックスが表示されません

     こんばんは、Java初心者です、宜しくお願いします。  アプレットを表示、背景に画像を表示させ、テキストボックス に文字、数字を入力するプログラムを書きました。  背景の画像は表示されるのですが、テキストボックスは 表示されません。  何故でしょうか、原因がよく分かりません。 宜しくお願い致します。 ============================================== public class TextboxTest extends Applet { MediaTracker tracker ; Image img ; TextTest tet ; public void init() { tracker = new MediaTracker( this ) ; img = getImage( getDocumentBase() , "../a.jpg" ) ; tracker.addImage( img , 0 ) ; } public void start() { try { tracker.waitForAll(); } catch (InterruptedException e) { } } public void paint( Graphics g2 ) { g2 = getGraphics(); g2.drawImage( img , 50 , 50 , 250 , 250 , this ) ; } public void abc( ) { tet = new TextTest() ; } } //=================================================================== class TextTest extends Applet implements ActionListener { JTextField jt0 ; Double lon = 0.0 ; public void init() { setLayout( null ) ; jt0 = new JTextField( "" ) ; jt0.setBounds( 150 , 150 , 100 , 30 ) ; this.add( jt0 ) ; Button bt = new Button( "Input" ) ; bt.setFont( new Font( "SansSerif" , Font.BOLD , 20 ) ) ; Color d = new Color( 0xff00ff ); bt.setBackground( d ) ; bt.setForeground( new Color( 0.0f , 0.0f , 0.0f ) ) ; bt.setBounds( 100 , 200 , 220 , 40 ) ; bt.addActionListener( this ) ; this.add( bt ) ; } public void actionPerformed( ActionEvent ae ) { jttest(); } void jttest() { try { String str_lon = jt0.getText() ; lon = Double.parseDouble( str_lon ) ; System.out.println( "lon =" + lon ) ; } catch( Exception ee ) { } } }

    • ベストアンサー
    • Java
  • フレームの×ボタンを押しても閉じることが出来ない

    JAVAアプレットでプログラムを作成していまして、FileInputStreamで 取り込んだデータをフレームに表示させたんですが、表示させたフレーム のボタン(ウィンドウ右上の×ボタンなど)何を押しても終了できないんです。 それで色んな所で探していて、フレームを閉じる処理が見つかったので、 それを追加してみましたが、それもだめです。 これはどのようにすればよろしいのでしょうか? 下記にソースを記述しておきますので、悪い点がございましたら教えてください。 import java.applet.Applet; import java.awt.*; import java.awt.event.*; import java.io.*; import java.lang.*; class frame extends Frame implements WindowListener { Color bgcolor; Font font; Label lab_1,lab_2; frame() { super("title"); setLayout(null); bgcolor = new Color(240,248,255); setBackground(bgcolor); setForeground(Color.black); addWindowListener(this); font = new Font("Serif",Font.PLAIN,13); /* Labelを作成 */ lab_1 = new Label(); lab_2 = new Label(); lab_1.setFont(font); lab_1.setText("TEST1"); lab_1.setBounds(20,20,60,30); add (lab_1); lab_2.setFont(font); lab_2.setText("TEST2"); lab_2.setBounds(80,20,60,30); add (lab_2); } protected void processWindowEvent(WindowEvent endEvent) { System.exit(0); } }

    • ベストアンサー
    • Java
  • iアプリのフォントについて

    アプリの中のPanelでいつも使うフォントを設定したいです。 Label l = new Label(""); l.setFont(f); というものをインスタンスごとにやるのではなくて、main()が始まったらすぐにフォントを設定して、Label l = new Label("");した時点で そのフォントが適用されているようにはできませんか?

  • java起動時にボタンが表示されない

    Javaの初心者です。以下のプログラムを起動するとJTextAreaとJLabel は、表示されるのですが、JButtonが表示されません。起動後にボタンの配置したところを触るとボタンが表示されるようになるのですが、ボタンのアクションリスナーが動作してしまいます。起動時にボタンも表示できるようにするには、どうしたらよいでしょうか? public class test_pro extends JFrame{ private static final long serialVersionUID = 1L; private JLabel label1;     JButton buton1,button2;     public JTextArea lt1; public test_pro() { this.setUndecorated(true);    GraphicsDevice device = GraphicsEnvironment.getLocalGraphicsEnvironment().getDefaultScreenDevice(); device.setFullScreenWindow(this); Container contentPane = getContentPane(); contentPane.setLayout(null); label1 = new JLabel("menu"); Font f1=new Font("Serif",1,22); label1.setFont(f1); label1.setForeground(Color.red);     contentPane.add(label1); lt1=new JTextArea(3,3); JScrollPane pane=new JScrollPane(lt1); pane.setBounds(new Rectangle(50,300,550,150)); contentPane.add(pane);     button1 = new JButton("SendRequestTest!"); button2 = new JButton("ReceiveResponseTest!"); label1.setBounds(new Rectangle(50,20,200,20)); button1.setBounds(new Rectangle(50,80,230,20)); button2.setBounds(new Rectangle(50,110,230,20));  contentPane.add(button1); contentPane.add(button2); button1.addActionListener(new MyJsendActionAdapter()); button2.addActionListener(new MyJreceiveActionAdapter());     this.setDefaultCloseOperation(EXIT_ON_CLOSE);     this.setVisible(true);    } /*以下省略*/

  • java アプレット

    学校の授業でアプレットを学んでいます。 しかし・・・ 下のプログラムで、計算した結果をlabel3にはりつけたいのですが、計算結果がでてくれません・・・ボタンを押しても何もでてきません。 コマンドプロンプトで、エラーはでてきません。 お手数ですが、誰かどこがいけないのか教えて下さい。 import java.awt.*; import java.awt.event.*; public class B extends java.applet.Applet implements ActionListener { Label label3 = new Label(); Button button2 = new Button(); TextField textfield1= new TextField(10); TextField textfield2= new TextField(10); public void init() { button2.setLabel("入力したらクリック!"); button2.setBounds(new Rectangle(50, 465, 120, 20)); this.setLayout(null); label3.setBackground(Color.blue); label3.setBounds(new Rectangle(325, 80, 200, 35)); textfield1.setBounds(100, 425, 100, 25); textfield2.setBounds(150, 350, 100, 25); this.add(textfield2, null); this.add(label3, null); this.add(textfield1, null); this.add(button2, null);} public void actionPerformed(ActionEvent event) {if(event.getSource() == button2) {int diff = Integer.parseInt(textfield1.getText()) - Integer.parseInt(textfield2.getText()); String otsuri; otsuri ="お釣りは"+ diff +"円です。"; label3.setText(otsuri);} }} よろしくお願いします。

    • ベストアンサー
    • Java
  • アプレットを再描画させたい

    アプレットを作りましたが、ウィンドウの大きさを変えた時にも描いたオブジェクトをrepaintを使って再描画させるのは どのようにすればよいのでしょうか。 _______________________________ public class QQ_Oekaki extends Applet implements ActionListener { Graphics g; Color col; int w; int h; Button btnBlue; Button btnYellow; public void init() { g = getGraphics(); btnBlue = new Button("Blue"); this.add(btnBlue); btnBlue.addActionListener(this); btnBlue.setFont(new Font("SansSerif", Font.ITALIC, 10)); btnBlue.setForeground(Color.blue); btnYellow = new Button("Yellow"); this.add(btnYellow); btnYellow.addActionListener(this); btnYellow.setFont(new Font("SansSerif", Font.ITALIC, 10)); btnYellow.setForeground(Color.yellow); this.addMouseMotionListener ( new MouseMotionAdapter() { public void mouseDragged(MouseEvent e) { int x = e.getX(); int y = e.getY(); g.setColor(Color.green); g.setColor(col); g.fillRect(x,y,5,5); } } ); } public void actionPerformed(ActionEvent ae) { if (ae.getActionCommand()=="Yellow") { col = Color.yellow; } if (ae.getActionCommand()=="Blue") { col = Color.BLUE; } } }

  • JAVAプログラミング

    プログラミングについて質問があります 割り勘ソフトを作りたいのですが button1を押したときに int i = Integer.parseInt(kazu.getText()); int e = Integer.parseInt(kane.getText()); int a = e/i; String s = String.valueOf(a); this.an.setText(s); というプログラムを実行したいのですが button1のクリック処理?イベント処理?というのはどのように書けばいいのでしょうか レイアウトは完成しているので ↓に付け足すような形でお願いします プログラミングの質問をするのは初めてなので何かおかしなところや足りないところがあれば教えてください public class jFram { public static void main(String[] args) { JFrame mainFrame = new JFrame("1"); mainFrame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); mainFrame.setSize(500,500); mainFrame.setResizable(false); mainFrame.setVisible(true); Container cont = mainFrame.getContentPane(); JButton button1 = new JButton("計算"); final JTextField kane = new JTextField(); final JTextField kazu = new JTextField(); JLabel mony = new JLabel("料金"); JLabel ninz = new JLabel("人数"); JLabel an = new JLabel("a"); button1.setLayout(null); cont.add(button1); button1.setBounds(40,380,100,30); button1.setBackground(Color.blue); kane.setLayout(null); cont.add(kane); kane.setBounds(160,340,100,30); kazu.setLayout(null); cont.add(kazu); kazu.setBounds(160,300,100,30); mony.setLayout(null); cont.add(mony); mony.setBounds(40,340,100,30); ninz.setLayout(null); cont.add(ninz); ninz.setBounds(40,300,100,30); an.setLayout(null); cont.add(an); an.setBounds(160,380,100,30); cont.setLayout(null); JPanel a = new JPanel(); a.setLayout(null); mainFrame.setVisible(true); } }

    • ベストアンサー
    • Java
  • Java3D テキストフィールドより値を入力(代入)し点を動かしたい

    Java3D テキストフィールドより値を入力(代入)し、点を動かしたいのですが、下記のようにソースコードを作成しましたが、入力した値が代入されていないようです。どこをどうしたらいいか教えてください! import java.applet.*; import java.awt.*; import java.awt.event.*; import javax.media.j3d.*; import javax.vecmath.*; import javax.swing.*; import javax.swing.JApplet.*; import javax.swing.JFrame.*; import javax.media.j3d.*; import com.sun.j3d.utils.applet.*; import com.sun.j3d.utils.universe.*; import com.sun.j3d.utils.geometry.*; public class J3A7 extends JApplet { JTextField text1=new JTextField("x=",10); JTextField text2=new JTextField("y=",10); JTextField text3=new JTextField("z=",10); double a,b,c; String str1,str2,str3; GraphicsConfiguration config=SimpleUniverse.getPreferredConfiguration(); Canvas3D canvas=new Canvas3D(config); SimpleUniverse universe=new SimpleUniverse(canvas); BranchGroup root=new BranchGroup(); TransformGroup trans1=new TransformGroup(); public J3A7() { setLayout(new BorderLayout()); add(canvas,BorderLayout.CENTER); JPanel panel=new JPanel(); GridLayout g1=new GridLayout(1,3); add(panel,BorderLayout.NORTH); panel.setLayout(g1); panel.add(text1); panel.add(text2); panel.add(text3); trans1.setCapability(TransformGroup.ALLOW_TRANSFORM_READ); trans1.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE); double x=0.0; double y=0.0; double z=0.0; Point3d[] po1=new Point3d[1]; po1[0]=new Point3d(x,y,z); float[] colorPo1={1.0f,0.0f,0.0f}; PointArray ge1=new PointArray(po1.length, GeometryArray.COORDINATES | GeometryArray.COLOR_3); ge1.setCoordinates(0,po1); ge1.setColors(0,colorPo1); Appearance appp1=new Appearance(); appp1.setCapability(Appearance.ALLOW_POINT_ATTRIBUTES_READ); appp1.setCapability(Appearance.ALLOW_POINT_ATTRIBUTES_WRITE); PointAttributes ppo1=new PointAttributes(); ppo1.setPointSize(25.0f); ppo1.setPointAntialiasingEnable(true); appp1.setPointAttributes(ppo1); Shape3D gggrid1=new Shape3D(ge1,appp1); gggrid1.setCapability(Shape3D.ALLOW_GEOMETRY_READ); gggrid1.setCapability(Shape3D.ALLOW_GEOMETRY_WRITE); Transform3D tr=new Transform3D(); Vector3d vector=new Vector3d(a,b,c); tr.setTranslation(vector); trans1.setTransform(tr); trans1.addChild(gggrid1); root.addChild(trans1); universe.getViewingPlatform().setNominalViewingTransform(); universe.addBranchGraph(root); text1.addActionListener(new Listener1()); text2.addActionListener(new Listener2()); text3.addActionListener(new Listener3()); } public class Listener1 implements ActionListener { public void actionPerformed(ActionEvent e) { if(e.getSource()==text1){ try{ String str1=text1.getText().trim(); a=Double.valueOf(text1.getText()).doubleValue(); }catch(NumberFormatException ex){} } } } public class Listener2 implements ActionListener { public void actionPerformed(ActionEvent e) { if(e.getSource()==text2){ try{ String str2=text2.getText().trim(); b=Double.valueOf(text2.getText()).doubleValue(); }catch(NumberFormatException ex){} } } } public class Listener3 implements ActionListener { public void actionPerformed(ActionEvent e) { if(e.getSource()==text3){ try{ String str3=text3.getText().trim(); c=Double.valueOf(text3.getText()).doubleValue(); }catch(NumberFormatException ex){} } } } public static void main(String[] args) { JFrame f= new JFrame(); J3A7 frame=new J3A7(); frame.init(); f.getContentPane().add(frame,BorderLayout.CENTER); f.setSize(500,500); f.setTitle("Kuukan: ボタン"); f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); f.setVisible(true); } }

専門家に質問してみよう