ControlP5 и залипающая кнопка
- Войдите на сайт для отправки комментариев
Втр, 04/11/2014 - 16:03
Добрый день, у меня возникла небольшая проблема с библиотекой controlP5. Есть две кнопки, видимая и скрытая. Если нажать на одну кнопку — она исчезает и появляется другая. Проблема в том, что вторая кнопка залипает. Вот простой код для демонстрации:
import controlP5.*;
ControlP5 cp5;
Button button1, button2;
int i = 0;
void setup() {
size(200, 200);
cp5 = new ControlP5(this);
button1 = cp5.addButton("BUTTON 1")
.setPosition((width - 70) / 2, 50);
button2 = cp5.addButton("BUTTON 2")
.setPosition((width - 70) / 2, height - 70)
.setVisible(false);
}
void controlEvent(ControlEvent theEvent) {
if (theEvent.getName() == "BUTTON 1") {
i = 1;
println("BUTTON 1 was pressed.");
}
if (theEvent.getName() == "BUTTON 2") {
i = 2;
println("BUTTON 2 was pressed.");
}
}
void draw() {
background(128);
if (i == 1) {
button1.setVisible(false);
button2.setVisible(true);
i = 0;
}
if (i == 2) {
button1.setVisible(true);
button2.setVisible(false);
i = 0;
}
}
Если нажимать кнопки по очереди, в логе можно увидеть:
BUTTON 2 was pressed.
BUTTON 2 was pressed.
BUTTON 1 was pressed.
BUTTON 2 was pressed.
BUTTON 2 was pressed.
BUTTON 1 was pressed.
Как это можно исправить?