JSlider
Publicado por victoria (23 intervenciones) el 06/06/2007 11:41:38
Hola necesito ayuda, me creado un scroll de tipo "JSlider" y lo quiero q haga es q en su movimiento mueva una linea. Me creado esta clase y luego en el metodo paint lo q hago es lo siguiente:
class sliderListener implements ChangeListener {
public void stateChanged(ChangeEvent e) {
JSlider tempSlider = (JSlider) e.getSource();
if (tempSlider.equals(scrollprueba)) {
transY = scrollprueba.getValue() - 100.0;
System.out.print("\nTransY: "+transY);
//canvas.repaint();
grafica.repaint();
}
else if(tempSlider.equals(scrollprueba2)){
transX = scrollprueba2.getValue()-100.0;
grafica.repaint();
System.out.print("\nTransX: "+transX);
}
}
}
public void paint(Graphics g){
Graphics2D g2D= (Graphics2D) g;
g2D.translate(applet.transX, applet.transY);
g.drawLine(0, 150, 300, 150);
BasicStroke stroke = new BasicStroke(1);
g2D.setStroke(stroke);
Line2D line1 = new Line2D.Float(0f, 150f, 300f, 150f);
g2D.draw(line1);
}
Pero me muestra la linea pero no me la mueve. Alguien me puede ayudar??
class sliderListener implements ChangeListener {
public void stateChanged(ChangeEvent e) {
JSlider tempSlider = (JSlider) e.getSource();
if (tempSlider.equals(scrollprueba)) {
transY = scrollprueba.getValue() - 100.0;
System.out.print("\nTransY: "+transY);
//canvas.repaint();
grafica.repaint();
}
else if(tempSlider.equals(scrollprueba2)){
transX = scrollprueba2.getValue()-100.0;
grafica.repaint();
System.out.print("\nTransX: "+transX);
}
}
}
public void paint(Graphics g){
Graphics2D g2D= (Graphics2D) g;
g2D.translate(applet.transX, applet.transY);
g.drawLine(0, 150, 300, 150);
BasicStroke stroke = new BasicStroke(1);
g2D.setStroke(stroke);
Line2D line1 = new Line2D.Float(0f, 150f, 300f, 150f);
g2D.draw(line1);
}
Pero me muestra la linea pero no me la mueve. Alguien me puede ayudar??
Valora esta pregunta


0