我正在尝试使用 controlp5 在数字框中打印一个变量。数据从串行端口读取并存储在变量中。我想在它不起作用的数字框中打印值。当我在控制台中打印它时,它会显示值,但不在数字框中。
这是我的代码:
import controlP5.*;
import processing.serial.*;
ControlP5 cp5;
PFont font;
enter code here
void setup(){
size(300, 450);
port = new Serial(this, "COM3", 19200);
cp5 = new ControlP5(this);
font = createFont("calibri light bold", 20);
cp5.addButton("increase").setPosition(100, 50)
.setSize(120, 70).setFont(font);
cp5.addButton("decrease").setPosition(100, 250)
.setSize(120, 70).setFont(font);
cp5.addNumberbox("temp").setPosition(100,160)
.setSize(120,70).setFont(font).setStringValue(val);
void draw(){
background(150, 0 , 150);`
fill(0, 255, 0);
textFont(font);
text("CONTROL", 80, 30);
if ( port.available() > 0)
{
val = port.readStringUntil('\n');
}
println(val);
void increase(){
port.write('r');
}
void decrease(){
port.write('b');
}
在这段代码中,val
是变量,数据是从串口读取并存储在val
但.setStringValue(val)
不打印的值val
。但是如果我在命令控制台中打印val
,它会显示变量的值val
。