我正在练习一次即将到来的考试,并查看一些练习题。我遇到了一个比其他题目更具挑战性的问题。我需要编写一个方法,使用swing来创建100个矩形,其宽度相同但高度不同,这可以通过简单的数学计算得出。我已经创建了一个数组来保存每个矩形的高度,并设置了宽度。我该如何使用swing来创建这些矩形?我希望你能在回答我的问题时引导我(例如尝试使用JLabel或类似的东西),而不是直接为我完成。否则我怎么会学得会呢?可能还会有一些后续问题。下面是生成高度数组和设置宽度的代码。假定参数单位为像素,请保留HTML标记。
public void paintComponent() {
int[] heights = new int[100];
int width = 10
int initialHeight = 100;
for (int i=0; i<100; i++) {
int usedHeight = height - i;
heights[i] = usedHeight;
}
请不要为我完成此操作。我只需要指向正确的方向。我认为我会以某种方式使用swing来完成这个任务。
BufferedImage
,并将它们保存在数组中,在每次刷新/重绘时清除面板并重新绘制图像,或者只需使用JLabel显示它们。对于绘图,从生成的BufferedImage
创建一个Graphic
对象,并调用绘制/填充矩形方法 :) - user2511414