Processing > ControlP5 > ScrollableList > 목록에서 선택 가능/Serial.list() 표시 및 선택
10102 단어 processingControlP5#migrated
Processing 3.1.1 on Windows 8.1 pro(64bit)
Library: ControlP5 v2.2.6
ぃ tp // m / 7, f9 / ms / 778, 2c3bc763d1d9401b
ListBox를 사용하여 목록 항목을 선택하려고 시도했지만 제대로 작동하지 않았습니다.
ScrollableList에서는 어떨까라는 기재가 발견되었으므로 사용해 보았다.
목록 표시 및 선택
코드 v0.1
이하에 실장했다.
import controlP5.*;
import java.util.*;
ControlP5 cp5;
int myCurrentIndex = 0;
String[] tokens;
void setup() {
size(400, 400);
cp5 = new ControlP5(this);
tokens = new String[10];
tokens[0] = "Hello";
tokens[1] = "Hi";
tokens[2] = "Ca va bien?";
List l = Arrays.asList(tokens[0], tokens[1], tokens[2]);
cp5.addScrollableList("dropdown")
.setPosition(100, 100)
.setSize(200, 100)
.setBarHeight(20)
.setItemHeight(20)
.addItems(l)
// .setType(ScrollableList.LIST) // currently supported DROPDOWN and LIST
;
}
void draw() {
background(0);
fill(255);
if (myCurrentIndex >= 0) {
text(tokens[myCurrentIndex], 200, 40);
}
}
void dropdown(int n) {
println(n);
myCurrentIndex = n;
}
실행 예
선택한 항목이 창 상단에 표시됩니다.
항목 선택시에는 0, 1, 2 등 항목 번호(n)가 콘솔 출력된다.
직렬 목록 보기 및 선택
Serial.list() 에 의해 사용할 수 있는 시리얼 포트의 리스트를 취득할 수 있다.
그것을 ScrollableList와 조합해 보았다.
code
import processing.serial.*;
import controlP5.*;
import java.util.*;
Serial myPort;
ControlP5 cp5;
int myCurrentIndex = 0;
String[] tokens;
void setup() {
size(400, 400);
cp5 = new ControlP5(this);
tokens = new String[10];
tokens = Serial.list();
List l = Arrays.asList(Serial.list());
cp5.addScrollableList("dropdown")
.setPosition(100, 100)
.setSize(200, 100)
.setBarHeight(20)
.setItemHeight(20)
.addItems(l)
// .setType(ScrollableList.LIST) // currently supported DROPDOWN and LIST
;
}
void draw() {
background(0);
fill(255);
if (myCurrentIndex >= 0) {
text(tokens[myCurrentIndex], 200, 40);
}
}
void dropdown(int n) {
println(n);
myCurrentIndex = n;
}
slidebar에서 COM 포트 선택보다 이쪽이 괜찮은 UI가 될 것 같다.
Reference
이 문제에 관하여(Processing > ControlP5 > ScrollableList > 목록에서 선택 가능/Serial.list() 표시 및 선택), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7of9/items/5aa617be2eb338bd6ba7텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)