用jf jp 就没改出来,那个加载在图上
想改动一下,尝试中
package MulitThread;
import java.awt.Graphics;
import java.awt.Rectangle;
import javax.swing.JFrame;
import javax.swing.JPanel;
public class SinWave extends JFrame implements Runnable{
int frame =1;
public SinWave() {
//JFrame jf=new JFrame();
//JPanel jp=new JPanel();
// jf.setBounds(400, 50, 300, 400);
// jf.add(jp);
// jf.setVisible(true);
setTitle("hello world!");
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(300, 400);
setVisible(true);
}
public static void main(String[] args) {
SinWave sw= new SinWave();
Thread th=new Thread(sw);
th.start();
}
@Override
public void run() {
while(true){
repaint();
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
frame++;
}
}
@Override
public void paint(Graphics g) {
Rectangle rt=getBounds();
g.clearRect(0, 0, rt.width, rt.height);
int h=rt.height/2;
for(int x=0;x<rt.width;x++){
int y1=(int) ((1.0+Math.sin((x-frame)*0.09))*h);
int y2=(int) ((1.0+Math.sin((x-frame)*0.01))*h);
g.drawLine(x, y1, x, y2);
}
}
}