使用JAVA写一个滚动面板,该滚动面板每一个内容为随机生成且不大于100的自然数,如果生成的数大于50内容会变成红色
时间: 2024-03-12 19:43:28 浏览: 53
JAVA 生成随机数
好的,以下是使用Java Swing编写的一个滚动面板,每个内容为随机生成的自然数,并且如果生成的数大于50,内容会变成红色。
```java
import javax.swing.*;
import java.awt.*;
import java.util.Random;
public class RandomScrollPane extends JPanel {
private static final int NUM_OF_ITEMS = 20; // 面板中内容的数量
private static final int MAX_VALUE = 100; // 随机数的最大值
public RandomScrollPane() {
setLayout(new BoxLayout(this, BoxLayout.Y_AXIS));
setPreferredSize(new Dimension(200, 400)); // 设置面板的大小
// 随机生成并添加内容
for (int i = 0; i < NUM_OF_ITEMS; i++) {
int randomNum = new Random().nextInt(MAX_VALUE) + 1;
JLabel label = new JLabel(String.valueOf(randomNum));
if (randomNum > 50) {
label.setForeground(Color.RED); // 如果随机数大于50,设置字体颜色为红色
}
add(label);
}
}
public static void main(String[] args) {
JFrame frame = new JFrame("Random Scroll Pane");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.getContentPane().add(new JScrollPane(new RandomScrollPane()));
frame.pack();
frame.setVisible(true);
}
}
```
在上面的代码中,我们创建了一个名为`RandomScrollPane`的类,它继承自`JPanel`。在构造函数中,我们使用`BoxLayout`将面板设置为垂直方向布局,并设置了面板的首选大小。然后,我们使用循环随机生成20个自然数,并将它们添加到面板中。如果某个随机数大于50,我们将其对应的`JLabel`的字体颜色设置为红色。
最后,我们在`main`方法中创建了一个`JFrame`,将`RandomScrollPane`添加到一个`JScrollPane`中,并将其添加到`JFrame`中。然后设置了一些基本的窗口属性,并显示了窗口。
阅读全文