Здрасте всем! Пишу апплет позволяющий проводить виртуальную лабораторную работу по физике. Если быть точнее: измерение коэффициента вязкости жидкости. Начал писать давно, но сразу появлялось куча проблем... Самая первая это: при нажатии на button должно выполняться какое-нибудь действие(движение шарика вертикально вниз). Движение шарика организовано на потоках. Помогите написать обработчик...
Код:
package untitled8;
import java.awt.*;
import javax.swing.*;
import java.awt.event.MouseEvent;
import java.awt.event.MouseAdapter;
public class Applet1 extends JApplet {
public Applet1() {
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
}
Graphics g;
//Component's
JButton jbtn;
JLabel jlb, jlb1, jlb2;
JComboBox Jc, Jc1;
JTextField jtf;
JTextArea jta;
JPanel jp;
int x;
public void init(){
Container CP = getContentPane();
CP.setLayout(null);
jbtn = new JButton("PREVED");
jbtn.setBounds(315,134,80,25);
CP.add(jbtn);
jlb = new JLabel("Жидкость");
jlb.setBounds(315,2,80,20);
CP.add(jlb);
Jc = new JComboBox();
Jc.setBounds(315,22,80,20);
Jc.addItem("WATER");
Jc.addItem("SPIRT");
Jc.addItem("GLICERIN");
CP.add(Jc);
jlb1 = new JLabel("SHARIK");
jlb1.setBounds(315,44,80,20);
CP.add(jlb1);
Jc1 = new JComboBox();
Jc1.setBounds(315,66,80,20);
Jc1.addItem("Fe");
Jc1.addItem("Cu");
Jc1.addItem("Al");
CP.add(Jc1);
jlb2 = new JLabel("DIAMETR");
jlb2.setBounds(315,88,80,20);
CP.add(jlb2);
jtf = new JTextField();
jtf.setBounds(315,112,80,20);
CP.add(jtf);
jta = new JTextArea();
jta.setBounds(5,220,390,75);
CP.add(jta);
jp = new JPanel();
jp.setBounds(5,5,305,210);
jp.setBackground(Color.cyan);
CP.add(jp);
}
private void jbInit() throws Exception {
jbtn.addMouseListener(new Applet1_jbtn_mouseAdapter(this));
}
public void jbtn_mouseClicked(MouseEvent e) {
g.setColor(Color.RED);
g.fillOval(25,25,25,25);
repaint();
}
class Applet1_jbtn_mouseAdapter extends MouseAdapter {
private Applet1 adaptee;
Applet1_jbtn_mouseAdapter(Applet1 adaptee) {
this.adaptee = adaptee;
}
public void mouseClicked(MouseEvent e) {
adaptee.jbtn_mouseClicked(e);
}
}
}