让html听java按钮点击

时间:2017-08-27 08:51:57

标签: javascript java html processing p5.js

我使用Processing IDE创建一个允许用户在HTML草图上绘制的应用程序。

现在,应用程序看起来像这样:

sketch

所以当我点击“新草图”时,它会在文件夹中创建一个新的sketch.html文件。现在,我想通过单击“饼图”按钮来创建饼图,如下所示:

pie chart

基本上,我的问题是如何让html听我的java自定义按钮功能? (也许是jsp,但我不确定)

按钮类如下:

public class Button {
  String label; // button label
  float x;      // top left corner x position
  float y;      // top left corner y position
  float w;      // width of button
  float h;      // height of button

  // constructor
  Button(String labelB, float xpos, float ypos, float widthB, float heightB) {
    label = labelB;
    x = xpos;
    y = ypos;
    w = widthB;
    h = heightB;
  }

  void Draw() {
    fill(218);
    stroke(141);
    rect(x, y, w, h, 10);
    textAlign(CENTER, CENTER);
    fill(0);
    text(label, x + (w / 2), y + (h / 2));
  }

  boolean MouseIsOver() {
    if (mouseX > x && mouseX < (x + w) && mouseY > y && mouseY < (y + h)) {
      return true;
    }
    return false;
  }
}

在Processing sketch中运行。在草图中,按下特定按钮上的鼠标操作由MouseIsOver定义。我希望我的HTML页面知道我的按钮被单击并执行以下操作。任何有用的建议都会非常有用!

1 个答案:

答案 0 :(得分:0)

JSP在服务器上运行。您需要在浏览器本身的客户端上运行此代码。

为此,您需要使用Processing.js将处理草图部署为JavaScript,然后您可以使用this guide编写在纯JavaScript和Processing.js之间进行交互的代码。

或者您可以将草图移至P5.js,您已经使用该标记标记了问题。这将涉及在P5.js中重写所有处理代码,这是JavaScript。

我有点困惑为什么点击按钮会创建一个文件。该文件应该已经存在,而不是在运行草图时手动创建它。