gpt4 book ai didi

java - 处理给我白色的窗口,因为高度

转载 作者:行者123 更新时间:2023-12-02 05:09:13 25 4
gpt4 key购买 nike

在处理过程中,我需要根据屏幕的高度用矩形填充屏幕。但是,下面的代码给了我一个白屏。有谁知道为什么吗?

void setup (){
size (600,600);
background (255);
fill (200,200,200);
noStroke();
}

int y = 10;
int spatie = 20;
int stop = height;

void draw(){
while(y < stop) {
rect (50,y,100,10);
y = y + spatie;
}
}

最佳答案

你的绘图循环是正确的

void draw(){
while(y < stop) {
rect (50,y,100,10);
y = y + spatie;
}
}

但是由于其他错误,您看不到矩形。

Processing 对象实例化其所有字段时(例如您的情况下的 yspatiestop)被初始化。此时,由于屏幕高度未知,变量 height 设置为 0

接下来调用setup(),并且从此时开始height 具有值。但是 stop 在初始化阶段分配了值。接下来在动画线程中调用 draw(),但 stop 变量被卡住为值 0

考虑这些小例子:

int stop = height;

public void setup() {
size(800,600);
}

public void draw() {
println("stop = " + stop);
}

和:

int stop;

public void setup() {
size(800,600);
stop = height;
}

public void draw() {
println("stop = " + stop);
}

首先将输出:stop = 0

第二个将打印:stop = 600

关于java - 处理给我白色的窗口,因为高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27472584/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com