用java设计一个设计一个窗口,该窗口中 有三个数字输入框,在每个框中分别输入颜色的RGB值,取值规定范围为[0,255]区间,按“更改颜色”按钮后,窗口中的文本按照指定的RGB值进行输出,在RGB值超出规定范围的情况下,文本显示为黑色。
时间: 2024-03-05 15:47:43 浏览: 87
用java语言完成一个窗口设计
好的,我可以为您提供一个简单的Java Swing GUI示例程序,来实现您所描述的功能。请参考以下代码:
```java
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextField;
public class ColorChanger extends JFrame {
private JTextField redField, greenField, blueField;
private JLabel colorLabel;
public ColorChanger() {
super("Color Changer");
JPanel panel = new JPanel();
panel.setLayout(null);
JLabel redLabel = new JLabel("Red:");
redLabel.setBounds(10, 10, 100, 20);
panel.add(redLabel);
redField = new JTextField();
redField.setBounds(120, 10, 100, 20);
panel.add(redField);
JLabel greenLabel = new JLabel("Green:");
greenLabel.setBounds(10, 40, 100, 20);
panel.add(greenLabel);
greenField = new JTextField();
greenField.setBounds(120, 40, 100, 20);
panel.add(greenField);
JLabel blueLabel = new JLabel("Blue:");
blueLabel.setBounds(10, 70, 100, 20);
panel.add(blueLabel);
blueField = new JTextField();
blueField.setBounds(120, 70, 100, 20);
panel.add(blueField);
JButton changeButton = new JButton("Change Color");
changeButton.setBounds(10, 100, 210, 30);
changeButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
int red = Integer.parseInt(redField.getText());
int green = Integer.parseInt(greenField.getText());
int blue = Integer.parseInt(blueField.getText());
if (red >= 0 && red <= 255 && green >= 0 && green <= 255 && blue >= 0 && blue <= 255) {
colorLabel.setForeground(new Color(red, green, blue));
} else {
colorLabel.setForeground(Color.BLACK);
}
}
});
panel.add(changeButton);
colorLabel = new JLabel("Color Preview");
colorLabel.setBounds(10, 140, 210, 30);
colorLabel.setHorizontalAlignment(JLabel.CENTER);
panel.add(colorLabel);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setContentPane(panel);
setSize(240, 220);
setResizable(false);
setVisible(true);
}
public static void main(String[] args) {
new ColorChanger();
}
}
```
这个程序创建了一个窗口,包含三个文本框和一个按钮。当用户在文本框中输入RGB值并单击按钮时,程序会根据这些值创建一个颜色对象,并用这个颜色对象来更新文本的颜色。如果输入的RGB值超出了规定范围,文本将显示为黑色。
阅读全文