我遇到了折叠ControlP5 DropdownList对象的问题。
我选择了我想要的项目,箭头指向它,好像它想要折叠......但所有的选择仍然存在!选择完成后,它永远不会崩溃。
我查看了isOpen()函数,它告诉我列表已关闭。我还探讨了isCollapse()函数,它告诉我列表已经崩溃......
这是我实例化对象的代码:
SimilarityChoices = P5Controller.addDropdownList("SimChoices").setPosition((float)(width * .7), 450);
SimilarityChoices.addItem("Euclidian", 1);
SimilarityChoices.addItem("Manhattan", 2);
SimilarityChoices.setValue(2);
this.SimilarityChoices.enableCollapse();
this.SimilarityChoices.setItemHeight(20);
this.SimilarityChoices.actAsPulldownMenu(true);
如果有人能给我一些关于如何完成这项工作的提示,我会非常感激。 (我很乐意提供更多信息)
答案 0 :(得分:1)
您会注意到下拉列表示例草图包含以下内容:
void draw() {
background(128);
}
用于绘制列表展开时先前渲染的像素。我使用您的代码写了一个草图,以更清楚地说明差异:
import controlP5.*;
ControlP5 P5Controller;
DropdownList SimilarityChoices;
void setup() {
size(500, 500);
P5Controller = new ControlP5(this);
SimilarityChoices = P5Controller.addDropdownList("SimChoices").setPosition((float)(width * .7), 450);
SimilarityChoices.addItem("Euclidian", 1);
SimilarityChoices.addItem("Manhattan", 2);
SimilarityChoices.setValue(2);
this.SimilarityChoices.enableCollapse();
this.SimilarityChoices.setItemHeight(20);
this.SimilarityChoices.actAsPulldownMenu(true);
}
void draw() {
//background(128);
}
取消注释background(128);
行会使其按预期运行。我希望有所帮助!请注意,您编码的某些设置可能不再是必需的。