Button 如何在Processing 2.2.1中创建按钮类并打印按钮标签

Button 如何在Processing 2.2.1中创建按钮类并打印按钮标签,button,printing,processing,Button,Printing,Processing,我的代码有问题。如果我点击按钮,结果是每当我点击按钮,它都会打印很多字符,就像第一个按钮是“H”一样,结果会是“HHHHHH” 我正在尝试使用leap motion设备作为键盘制作一个虚拟键盘。这就像按钮的颜色会改变,如果我做搜索和选择 color当前颜色; 按钮rect1,rect2; 布尔锁定=假; 无效设置(){ //设置窗口 大小(200200); 颜色baseColor=颜色(102、102、102); currentcolor=基色; int x=30; int y=100; int

我的代码有问题。如果我点击按钮,结果是每当我点击按钮,它都会打印很多字符,就像第一个按钮是“H”一样,结果会是“HHHHHH”

我正在尝试使用leap motion设备作为键盘制作一个虚拟键盘。这就像按钮的颜色会改变,如果我做搜索和选择

color当前颜色;
按钮rect1,rect2;
布尔锁定=假;
无效设置(){
//设置窗口
大小(200200);
颜色baseColor=颜色(102、102、102);
currentcolor=基色;
int x=30;
int y=100;
int size=50;
颜色按钮颜色=颜色(153、102、102);
颜色高光=颜色(102,51,51);
rect1=新的RectButton(x、y、大小、按钮颜色、高亮显示);
//定义并创建矩形按钮#2
x=90;
y=100;
尺寸=50;
按钮颜色=颜色(153、153、153);
高光=颜色(102、102、102);
rect2=新的RectButton(x、y、大小、按钮颜色、高亮显示);
}
作废提款(){
背景(当前颜色);
中风(255);
更新(mouseX,mouseY);
rect1.display();
rect2.display();
}
无效更新(整数x,整数y){
如果(锁定==false){
rect1.update();
rect2.update();
}否则{
锁定=错误;
}
如果(鼠标按下){
如果(rect1.pressed()){//ON按钮
currentcolor=rect1.basecolor;
印刷品(“H”);
}如果(rect2.pressed()){//OFF按钮
currentcolor=rect2.basecolor;
印刷体(“L”);
}
}
}
类按钮{
int x,y;
整数大小;
颜色基色、高亮色;
颜色;
布尔覆盖=假;
布尔值=假;
无效更新()
{
如果(超过()){
currentcolor=highlightcolor;
}否则{
currentcolor=基色;
}
}
布尔值()
{
如果(超过){
锁定=真;
返回true;
}否则{
锁定=错误;
返回false;
}    
}
布尔覆盖()
{ 
返回true;
}
无效显示()
{ 
}
}
类RectButton扩展按钮{
矩形按钮(int ix、int iy、int isize、颜色icolor、颜色ihighlight)
{
x=ix;
y=iy;
大小=isize;
basecolor=icolor;
highlightcolor=i高亮度;
currentcolor=基色;
}
布尔覆盖()
{
if(过度估计(x、y、大小、大小)){
过度=正确;
返回true;
}否则{
过度=错误;
返回false;
}
}
无效显示()
{
中风(255);
填充(当前颜色);
rect(x,y,size,size);
}
}
布尔覆盖(整数x,整数y,整数宽度,整数高度){

如果(mouseX>=x&&mouseX=y&&mouseY问题是您正在检查
draw()
循环中鼠标按下的状态,因此每秒60次。按下鼠标可能会注册多个帧,因此
if(mousePressed)
将在每帧中多次为真

下面是我要做的:

使用该函数切换布尔开启标志:

boolean ON=false; // initial setting.
void mousePressed() {
  ON = !ON;
}
更改:

if(mousePressed) {...} 


欢迎来到Stack Overflow!请查看我们的SO问题清单,以帮助您提出一个好问题,从而得到一个好答案。什么语言?什么平台?什么UI库?很抱歉,我在这里很新,我的英语不是很好。我已经编辑了我的帖子。现在可以了吗?
if(ON) {...}
ON=false;