In the Java applet below, i'm trying to make the text box change color when the slider is moved to the left and right. Right now when I move the JSlider left or right the text in the text box changes color. How do I get the text box the change color ??????
Code:
import java.awt.Dimension;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JApplet;
import javax.swing.JTextField;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JSlider;
import javax.swing.SwingUtilities;
import java.util.Random;
import java.awt.Color;
public class Main extends javax.swing.JApplet {
private JTextField aTextField;
private JSlider aSlider;
public static void main(String[] args) {
SwingUtilities.invokeLater(new Runnable() {
public void run() {
JFrame frame = new JFrame();
Main inst = new Main();
frame.getContentPane().add(inst);
frame.pack();
frame.setVisible(true);
}
});
}
public Main() {
super();
initGUI();
}
private void initGUI() {
try {
setSize(new Dimension(200, 200));
getContentPane().setLayout(null);
{
aTextField = new JTextField();
aTextField.setBackground(Color.white);
getContentPane().add(aTextField);
aTextField.setText("How do I make the whole text box change color ?");
aTextField.setBounds(65, 80, 300, 80);
}
{
aSlider = new JSlider();
aSlider.setBackground(Color.yellow);
getContentPane().add(aSlider);
aSlider.setBounds(65, 200, 300, 80);
aSlider.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseDragged(MouseEvent evt) {
aSliderMouseDragged(evt);
}
});
}
} catch (Exception e) {
e.printStackTrace();
}
}
private void aSliderMouseDragged(MouseEvent evt) {
Random r = new Random();
int red = Math.abs(r.nextInt())%200;
int green = Math.abs(r.nextInt())%100;
int blue = Math.abs(r.nextInt())%100;
aTextField.setForeground(new Color(red, green, blue));
}
}
Comment