• 締切済み

アプレットを再描画させたい

アプレットを作りましたが、ウィンドウの大きさを変えた時にも描いたオブジェクトを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; } } }

  • htgo
  • お礼率33% (407/1224)
  • Java
  • 回答数1
  • ありがとう数1

みんなの回答

  • _ranco_
  • ベストアンサー率58% (126/214)
回答No.1

質問の意味がよく分からないので、質問にはお答えしません。それ以前に、アプレットの基本形/標準形を勉強してください。以下のアプレットをコンパイルし、動かしてみてください。参考URLは、http://を略します。 ------------------------------------------------------ /* save and compile as QQ */ /* <applet code="QQ" width="400" height="400"></applet> */ import java.applet.*; import java.awt.*; import java.awt.event.*; public class QQ extends Applet implements ActionListener{ Color col; int ox, oy, nx, ny; Button btnBlue; Button btnYellow; public void init(){ col = Color.lightGray; //ボタンが押される前の描画色 setBackground(Color.darkGray); btnBlue = new Button("Blue"); add(btnBlue); btnBlue.addActionListener(this); btnBlue.setFont(new Font("SansSerif", Font.ITALIC, 10)); btnBlue.setForeground(Color.blue); btnYellow = new Button("Yellow"); add(btnYellow); btnYellow.addActionListener(this); btnYellow.setFont(new Font("SansSerif", Font.ITALIC, 10)); btnYellow.setForeground(Color.yellow); addMouseMotionListener(new MouseMotionAdapter(){ public void mouseDragged(MouseEvent e){ ox = nx; oy = ny; nx = e.getX(); ny = e.getY(); QQ.this.repaint(); } }); addMouseListener(new MouseAdapter(){ public void mousePressed(MouseEvent e){ ox = nx = e.getX(); oy = ny = e.getY(); QQ.this.repaint(); } }); } public void update(Graphics g){ //背景塗りつぶしを抑止する(連続描画のため) g.setColor(col); paint(g); } public void paint(Graphics g){ g.drawLine(ox, oy, nx, ny); } public void actionPerformed(ActionEvent ae){ if (ae.getActionCommand()=="Yellow"){ col = Color.yellow; } else if (ae.getActionCommand()=="Blue"){ col = Color.BLUE; } QQ.this.repaint(); } } --------------------------------------------------

参考URL:
java.sun.com/docs/books/tutorial/uiswing/components/applet.html, java.sun.com/docs/books/tutorial/deployment/applet/

関連するQ&A

  • 描画してもウィンドウをリサイズすると描画が消える

     アプレットで描画してもウィンドウをリサイズすると、描画が消えてしまいます。  これのどこにrepaint()、update()、paint()を入れてやれば良いのでしょうか。    本格的にプログラムの勉強をしようと考えているのですが、大阪、京都付近でjava、cとかを(出来れば個人教授のような 感じで)教えてくれる、スクールをご存知でしたら是非教えて下さい。 ____________________________________________________________ public class Q_Draw_Line extends Applet implements MouseListener , ActionListener { Graphics g; Color col; Button btnyellow; int mode; Button btncircle; Button btndot; public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mousePressed(MouseEvent e){} public void mouseReleased(MouseEvent e){} public void init() { g = getGraphics(); btnyellow = new Button("黄"); this.add(btnyellow); btnyellow.addActionListener(this); btncircle = new Button("円"); this.add(btncircle); btncircle.addActionListener(this); btndot = new Button("点"); this.add(btndot); btndot.addActionListener(this); this.addMouseMotionListener ( new MouseMotionAdapter() { public void mouseDragged(MouseEvent e) { int x = e.getX(); // X座標取得 int y = e.getY(); // Y座標取得 g.setColor(col); switch(mode) { case 1 : g.drawOval(x-20/2,y-20/2,20,20);break; case 2 : g.fillRect(x,y,5,5);break; } } } ); } public void actionPerformed(ActionEvent e) { if (e.getActionCommand() == "黄") { col = Color.yellow; } if (e.getActionCommand() == "円") { mode = 1; } if (e.getActionCommand() == "点") { mode = 2; } } }

    • ベストアンサー
    • Java
  • 画面のちらつきの原因が知りたいです

    JAVAの初心者です、宜しくお願いします。 下のようなプログラムを書きました。 「public void paint(Graphics g){ ~ repaint();」とすると、画像がちらつきます、しかし、「repaint();」を消すとちらつかなくなります、この原因が分かりません。 一体何故このような現象が起こるのでしょうか、宜しくお願いします。 ========================================================== import java.applet.Applet; import java.awt.Button; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.MouseEvent; import java.awt.event.MouseListener; public class Oval_Rec_1_071128 extends Applet implements MouseListener , ActionListener { int x1 ; int y1 ; int xh = 50 ; int yv = 50 ; Button bt1 ; Button bt2 ; public void actionPerformed(ActionEvent ae){} public void mouseClicked(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mouseReleased(MouseEvent e){} public void init() { setBackground(Color.yellow); addMouseListener(this); bt1 = new Button("push"); bt1.setFont(new Font("SansSerif", Font.BOLD, 20)); bt1.setBackground(Color.black); bt1.setForeground(Color.lightGray); add(bt1); bt1.addActionListener(this); bt2 = new Button("change_circle"); add(bt2); bt2.addActionListener(this); } public void mousePressed(MouseEvent e) { x1 = e.getX(); y1 = e.getY(); xh = e.getX(); yv = e.getY(); // repaint(); //comment out } public void paint(Graphics g) { g.setColor(Color.red); g.setFont(new Font("Serif",Font.BOLD,24)); g.drawString("Hello Applet World ! !" , 50 , 50); g.setColor(Color.blue); g.drawLine( 100 , 100 , 500 , 500); g.setColor(Color.cyan); g.fillOval( x1 , y1 , xh , yv); g.setColor(Color.magenta); g.fillRect( xh , yv, x1/10 , y1/10 ); repaint(); } }

    • ベストアンサー
    • 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
  • 別ウインドウに画像と文字を表示しない

     こんにちは。  ボタンをクリックすると、別ウインドウが開いて、画像と文字が表示される アプレットを作りたいのですが、別ウインドウは開きますが、画像と文字は 表示されません。  何度考えても、全く原因が分かりません。  皆さんのご教示宜しくお願いします。 ================================================================================ public class ImageTest extends Applet implements ActionListener { Image img1 , img2 ; JLabel jb1 ; int lblnum ; MyPanel1 mp1 ; Graphics g ; public void init() { img1 = getImage( getDocumentBase() , "star1.jpg" ) ; this.setBackground( Color.yellow ) ; this.setLayout( null ) ; JPanel jp1 = new JPanel() ; jp1.setSize( 1500 , 850 ) ; jp1.setLayout( null ) ; jp1.setBackground( Color.yellow ) ; JPanel jp2 = new JPanel() ; jp2.setBackground( Color.magenta ) ; this.add( jp1 ) ; this.add( jp2 ) ; JLabel jl1 = new JLabel( new ImageIcon( "star1.gif" ) ) ; jl1.setSize( 150 , 150 ) ; jl1.setLocation( 50 , 50 ) ; jp1.add( jl1 ) ; JButton jb1 = new JButton( "star" ) ; jb1.setMargin(new Insets( 1 , 1 , 1 , 1 ) ) ; jb1.setBorderPainted( false ) ; jb1.setForeground( Color.red ) ; jb1.setBackground( Color.yellow ) ; jb1.setLocation( 75 , 210 ) ; jb1.setSize( 100 , 50 ) ; jb1.setFont( new Font( "SansSerif" , Font.ITALIC , 20 ) ) ; jb1.addActionListener( this ) ; jp1.add( jb1 ) ; } public void actionPerformed( ActionEvent e ) { Object source = e.getSource() ; if( source == jb1 ) lblnum = 1 ; MyPanel1 mp1 = new MyPanel1( lblnum , img1 ) ; mp1.setVisible( true ); repaint(); } class MyPanel1 extends Frame { int k ; String str ; Image img ; public MyPanel1( int k , Image img ) { this.k = k ; this.img = img ; setSize( 500 , 500 ) ; setBackground( Color.magenta ) ; setLocation( 300 , 300 ) ; } public void init( ) { switch( k ) { case 1: str = "test" ; break ; } setVisible( false ) ; } public void paint( Graphics g ) { g.drawImage( img , 0 , 0 , 30 , 30 , this ) ; g.drawString( str , 150 , 150 ) ; } } } ================================================================================

    • ベストアンサー
    • Java
  • マインスイーパーもどきをつくりたいのですが・・・

    周辺の地雷の数を表示させたいのですがなかなかうまくいきません・・・ どうすればいいか教えてください。 import java.applet.Applet; import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; public class jirai extends JApplet implements ActionListener{ int Width,Masu; //格子の幅(ピクセル)、格子の数 int x,y,ix,iy; int i,j; int n,m; int l; int count = 0; int JIRAI[][] = new int[10][10]; JPanel pan1, pan2; JButton s_btn = new JButton("start"); JTextField txt = new JTextField(23); public void init(){ setSize(360,400); Container con=getContentPane(); pan1=new JPanel(); pan2=new JPanel(); con.add(pan1); con.add(pan2=new JPanel(),"South"); pan1.addMouseListener(new MyMouseListener()); pan1.add(txt); pan1.setBackground(Color.yellow); pan1.setForeground(Color.red); pan1.setSize(300,400); pan1.setBorder(BorderFactory.createLineBorder(Color.red)); pan2.add(s_btn); s_btn.setBackground(Color.pink); s_btn.addActionListener(this); pan2.setBorder(BorderFactory.createLineBorder(Color.blue)); pan2.setBackground(Color.red); } public void actionPerformed(ActionEvent e){ if (e.getActionCommand().equals("start")){ Graphics g=pan1.getGraphics(); Masu=8; Width=30; g.setColor(Color.black); for(x=Width*2;x<=Width*10;x+=Width) g.drawLine(x,Width*2,x,Width*10); //30ピクセル間隔でY方向の線を描く for(y=Width*2;y<=Width*10;y+=Width) g.drawLine(Width*2,y,Width*10,y); //30ピクセル間隔でX方向の線を描く for(i=1;i<8;i++){ for(j=1;j<8;j++){ JIRAI[i][j] = 0; } } for(n=0;n<15;n++){ do{ for(i=1;i<8;i++){ for(j=1;j<8;j++){ m=(int)(Math.random()*8); l=(int)(Math.random()*8); } } }while(JIRAI[m][l]!=0); JIRAI[m][l] = 1; } for (int dx=(ix-1)-1;dx<(ix-1)+1;dx++){ for(int dy=(iy-1)-1;dy<(iy-1)+1;dy++){ } } g.dispose(); txt.setBackground(Color.pink); txt.setForeground(Color.black); txt.setFont( new Font("Serif",Font.ITALIC,18)); txt.setText("地雷の数は15個です!") ; showStatus(" 地雷の数は15個です!"); //アプレット下の表示 } } class MyMouseListener extends MouseAdapter{ public void mouseClicked(MouseEvent me){ //マウスがクリックされた x=me.getX(); //マウスのクリック位置:x座標 y=me.getY(); //マウスのクリック位置:y座標 ix=(int)(x/Width); //0~11? アプレットの大きさで変わる iy=(int)(y/Width); //0~11? アプレットの大きさで変わる if(2<=iy && iy<=Masu+1 && 2<=ix && ix<=Masu+1){ //(2,2)~(9,9) ix=ix-1; iy=iy-1; Graphics g=pan1.getGraphics(); //クリックした升目の地雷の有無を判定して処理 if(JIRAI[ix-1][iy-1] == 1){ g.setColor(Color.red); g.fillOval(30*(ix-1)+60,30*(iy-1)+60,30,30); JOptionPane.showMessageDialog(null,"ゲーム-オーバー!",null,JOptionPane.ERROR_MESSAGE); } if(JIRAI[ix-1][iy-1] == 0){ g.setColor(Color.blue); g.fillOval(30*(ix-1)+60,30*(iy-1)+60,30,30); g.setColor(Color.black); g.drawString(""+check,30*(ix-1)+70,30*(iy-1)+80); } g.setColor(Color.yellow); g.fillRect(60,305,100,50); g.setColor(Color.black); g.setFont( new Font("Serif",Font.ITALIC,18)); g.drawString("("+ix+","+iy+")",60,320); } } } }

  • カレンダーを作っているのですが

    import java.awt.*; import java.awt.event.*; public class GraphicsC4 extends Frame { public static void main(String ar[]){ Frame f=new GraphicsC4(); f.setTitle ("平成19年6月 (GridLayout)"); f.setSize(640,400); f.setVisible(true); } GraphicsC4(){ setFont(new Font("SansSerif",Font.BOLD+Font.ITALIC,30)); GridLayout gl=new GridLayout(6,7); setLayout(gl); String day[]={"SUN","MON","TUE","WED","THU","FRI","SAT"}; for(int j=0;j<=6;j++){ Button b1=new Button(day[j]); add(b1); } for(int e=1;e<=5;e++){ Button b2=new Button(""); add(b2); } for(int i=1;i<=30;i++){ Button b3=new Button(""+i+""); add(b3); } addWindowListener(new WinAdapter()); } class WinAdapter extends WindowAdapter{ public void windowClosing(WindowEvent we){System.exit(0);} } } ここまで書いたのですが、日曜日を赤く表示することが出来ません。どなたか教えてください。

  • javaでgraphicsの描画の件

    今日は javaでgraphicsの描画を行っていますが、CENTERのペインには、描画できますが、 それ以外のペイン(NORTH,WEST、EAST,、SOUTH)には、描画できないように思います。 Q1)この件について、コメント頂けますと大変助かります。 下記に、ソースコードを添付いたします。 =================== package pkg; import java.awt.BasicStroke; import java.awt.BorderLayout; import java.awt.Color; import java.awt.Font; import java.awt.Graphics; import java.awt.Graphics2D; import java.awt.geom.Line2D; import javax.swing.JFrame; import javax.swing.JPanel; public class SampleApp extends JFrame { public SampleApp(){ this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); this.setSize(600, 300); this.add(new GPanel(), BorderLayout.WEST); this.add(new GPanel(), BorderLayout.CENTER); } public static void main(String[] args) { new SampleApp().setVisible(true); } } class GPanel extends JPanel { @Override public void paintComponent(Graphics g) { super.paintComponent(g); // int w = this.getWidth(); // int h = this.getHeight(); int w=200; int h=200; g.setColor(Color.RED); g.fillOval(0, 0, w/2, h/2); Graphics2D g2 = (Graphics2D)g; g2.draw(new Line2D.Double(40, 40, w,h)); g.setColor(Color.BLUE); g.setFont(new Font("Serif", Font.BOLD, 36)); g.drawString("Graphics draw!", 10, h - 50); // g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON); g2.draw(new Line2D.Double(30.0d, 50.0d, 180.0d, 140.0d)); g2.setPaint(Color.PINK); BasicStroke wideStroke = new BasicStroke(8.0f); g2.setStroke(wideStroke); g2.draw(new Line2D.Double(30.0d, 120.0d, 250.0d, 70.0d)); } }

    • ベストアンサー
    • Java
  • JAVAのアプレットのアニメーションの質問

    javaのアプレットに関する質問なんですが、今次の条件でアニメーションを作っているんですが、どうしても解決できない問題があります。 赤い長方形が左から右に動いていくプログラムを作成する。 ・ 長方形が描画領域 の右端に消えると左端から再 度出現するようにせよ。 ・ Reverseと書かれたボタンを押すと長方形の進行方 向が左右反対になる。 ・ このとき、左右どちらの端に長方形が消えた場合も 反対端から長方形は出現する。 ・ 長方形をクリック(ボタン押下)すると長方形の色が 変化する。 ・ 赤い長方形であれば青に、青い長方形であれば赤 に変化する。 この条件でつくろうと思っているのですが、長方形をクリックしたときに、色の変化がどうしてもできません。どこに問題があるか分かりません。御教授お願いします。 import java.applet.Applet; import java.awt.Graphics; import java.awt.Color; import java.awt.Font; import java.awt.Button; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; import java.awt.event.MouseListener; public class Report2 extends Applet implements Runnable,ActionListener,MouseListener{ int x=100; int y=50; int width=80; int height=120; int dir=-2; int w; int z; Button bt; boolean direction; boolean colorRed; public void actionPerformed(ActionEvent ae){ if(direction==true){ direction=false; } else{ direction=true; } } public void init(){ bt=new Button("Reverse"); add(bt); bt.addActionListener(this); Thread th; th =new Thread(this); th.start(); addMouseListener(this); } public void mouseClicked(MouseEvent e){ w=e.getX(); z=e.getY(); repaint(); if(e.getX()>=x && e.getX()<=x+width && e.getY()>=y && e.getY()<=y+height){ colorRed=!colorRed; } } public void mouseEntered(MouseEvent e){ } public void mouseExited(MouseEvent e){ } public void mouseReleased(MouseEvent e){ } public void mousePressed(MouseEvent e){ w=e.getX(); z=e.getY(); repaint(); if(e.getX()>=x && e.getX()<=x+width && e.getY()>=y && e.getY()<=y+height){ colorRed=!colorRed; } } public void run() { while(true){ x++; if(x==400){ x=-80; } if(direction==true){ x=x+dir; } else{ } repaint(); try{ Thread.sleep(30); } catch(InterruptedException e){} } } public void paint(Graphics g){ g.setColor(Color.white); g.fillRect(0,0,400,200); g.setColor(Color.red); g.fillRect(x,y,80,120); if(colorRed=true){ g.setColor(Color.red); } if(colorRed=false){ g.setColor(Color.blue); } g.fillRect(x,y,width,height); g.setColor(Color.black); g.fillRect(x,y,10,10); } }

    • ベストアンサー
    • Java
  • 文字列の表示

    Graph2クラスで作った文字と直線をMainFrameクラスで作ったフレームに表示させたいのですが、フレームが作成されるだけで文字と直線が表示されません。どうすれば表示されるのか是非教えてください。お願いします。 import java.awt.*; import java.awt.event.*; import javax.swing.*; class Graph1 { public static void main(String argv[]) { MainFrame MF = new MainFrame(); MF.setVisible(true); } } class MainFrame extends Frame { public MainFrame() { setLocation(500 , 200); setTitle("MainFrame"); setSize(500 , 300); setLayout(null); //Graph2 aGraph2 = new Graph2(); //aGraph2.show(); addWindowListener(new MyWinL()); } private class MyWinL extends WindowAdapter { public void windowClosing(WindowEvent e) { System.out.println("終了しました。\n"); System.exit(0); } } } class Graph2 extends JApplet { public void paint(Graphics g) { g.setColor(Color.GRAY); for (int i=0; i < 5; i++) { g.drawLine(0, 50*i, 400, 50*i); } for (int i=0; i < 9; i++) { g.drawLine(50*i, 0, 50*i, 200); } Font font1 = new Font("Serif" , Font.PLAIN,30); Font font2 = new Font("SansSerif" , Font.PLAIN,30); Font font3 = new Font("MS P明朝" , Font.PLAIN,30); Font font4 = new Font("MS Pゴシック" , Font.PLAIN,30); g.setColor(Color.RED); g.setFont(font1); g.drawString("Hello! Java world!", 50, 50); g.setFont(font2); g.drawString("Hello! Java world!", 50, 100); g.setColor(Color.BLUE); g.setFont(font3); g.drawString("Hello! Java world!", 50, 150); g.setFont(font4); g.drawString("Hello! Java world!", 50, 200); }; }

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

専門家に質問してみよう