处理Java时,如何通过按按钮显示/隐藏条形图?
我正在做这个代码,通过按下按钮来绘制条形图,它可以工作。但是如果我按下同一个按钮,我希望条形图再次被隐藏 好心的,你能帮我吗? 这是我在按钮内的代码:处理Java时,如何通过按按钮显示/隐藏条形图?,java,processing,Java,Processing,我正在做这个代码,通过按下按钮来绘制条形图,它可以工作。但是如果我按下同一个按钮,我希望条形图再次被隐藏 好心的,你能帮我吗? 这是我在按钮内的代码: if (mousePressed) { // film 1 if (( mouseX > 1150) && (mouseY > 38) && (mouseX < 1207) && (mouseY < 65)) { int x=0;
if (mousePressed)
{ // film 1
if (( mouseX > 1150) && (mouseY > 38) && (mouseX < 1207) && (mouseY < 65))
{
int x=0;
text("Rank Country Film",25,10);
int tRows = table1.getRowCount();
for(int i = 0; i < tRows; i++)
{
TableRow row = table1.getRow(i);
String r1 = row.getString("film");
String r2 = row.getString("country");
float r3 = row.getFloat("boxoffice");
int r4 = row.getInt("rank");
fill(255,0,0);
pushMatrix();
translate (0,25);
int legendXOffset = 20;
textFont(f,9);
text(r4,legendXOffset,i*11);
text(r2,legendXOffset + 20,i*11);
text(r1,legendXOffset + 70,i*11);
popMatrix();
float h = map(r3, 15, 0, 0, 80);
// change this one oamr x+30, x+=20 to make bars sepretly
rect(x+29, 635, 7, h);
x+=50;
int rank = row.getInt("rank");
String film = row.getString("film");
String country = row.getString("country");
}
}
}
if(鼠标按下)
{//电影1
如果((mouseX>1150)&&(mouseY>38)&(mouseX<1207)&(mouseY<65))
{
int x=0;
文本(“Rank Country Film”,25,10);
int-tRows=table1.getRowCount();
for(int i=0;i
我想我们需要更多的代码来帮助您。这部分代码的使用方式让我猜测您在绘图中没有调用background(someColor)
,对吗
我认为要走的路是:
- 使用回调函数
而不是字段mousePressed()
。这会给你更好的控制mousePressed
- 使用布尔值作为标记来绘制或不绘制条形图。按下按钮时切换此标志
- 在
中,使用draw()
background()清除背景()
- 然而在
中有条件地绘制图形draw()
//单击屏幕显示“图形”
布尔showGraph=false;
无效设置(){
尺寸(300300);
矩形模式(中心);
背景(255);
}
作废提款(){
//清除背景
背景(255);
//有条件地提取
if(显示图){
绘图();
}
}
void mousePressed(){
showGraph=!showGraph;//切换为真或假
}
void drawGraph(){
填补(200,23178);;
矩形(宽度/2,高度/2100,88);
}
非常感谢您的回复,这是我的代码,第一个按钮可以使用,但另一个按钮不行。这是您的全部代码吗?我不这么认为。我相信问题不在于这段代码,而在于整个结构。