如何制作一个按钮,您可以在处理中导入自己的音乐?

时间:2014-03-22 17:55:16

标签: file import directory processing

我正在寻找一种方法来制作一种导入按钮,用户可以从其文件夹中导入音乐。我不知道如何做到这一点所以任何提示都会感激不尽。

1 个答案:

答案 0 :(得分:1)

这是让你前进的方法:

float buttonX;
float buttonY;
float buttonW;
float buttonH;

void setup() {

  textSize(24);

  frame.setResizable(false);

  background(255);

  size(600, 200);

  fill(0);
  stroke(0);
  noFill();

  buttonW = 200;
  buttonH = 50;
  buttonX = width - width/2 - buttonW/2;
  buttonY = height/2 - buttonH/2;
}

void draw() {

  background(255);
  fill(0);

  rectMode(CORNER);

  rect(buttonX, buttonY, buttonW, buttonH);

  fill(255);

  textAlign(LEFT);
  text("Import File", buttonX+35, buttonY+30);
}

void mouseClicked() {
  if (mouseX>buttonX && mouseX < buttonX+buttonW && mouseY > buttonY && mouseY < buttonY+buttonH) {
    selectInput("Import music file", "fileSelected");
  }
}

/* Taken from Processing.org */
void fileSelected(File selection) {
  if (selection == null) {
    println("Window was closed or user hit cancel");
  } else {
    println("User selected " + selection.getAbsolutePath());
  }
}

请注意这里的一些事情。该按钮只是在屏幕上绘制的rect,然后点击被限制在rect的限制范围内,这实际上会创建button。我在这里展示了这一点,因此您可以理解您可以使用Processing中可用的最简单和最基本的对象创建GUI。这是一个非常简单的草图,除了给你一个文件浏览器(检查Processing docs)之外什么都不做,并打印你选择的文件的路径,如果你点击取消就写出一条消息。你用它做什么取决于你。玩得开心。

一旦你完成游戏并希望看到其他人做了什么以及其他人制作的GUI看起来是什么样子,请转到此页面并查看GUI部分:http://www.processing.org/reference/libraries/(这只是看他们如何实现他们的按钮,而不是文件浏览器。