Processing/ControlP5 > C++ Builder의 TMemo에 해당하는 것을 구현
6706 단어 processingControlP5#migrated
Processing 3.1.1 on Windows 8.1 pro(64bit)
ControlP5 v2.2.6
원하는 기능
C++ Builder의 TMemo와 같이, 복수행의 텍스트 표시 기능을 갖고 싶다.
텍스트의 행수가 많아진 시점에서, 위의 행이 사라지고 새로운 행이 추가된다고 하는 기능.
Processing이나 ControlP5 관련으로 API를 찾았지만, 그러한 것을 찾을 수 없었기 때문에 구현해 보았다.
code
split()이라는 함수가 있었기 때문에 그것을 사용했다.
import controlP5.*;
String dispLabel = "";
int count = 0;
void setup() {
size(700,400);
frameRate(1);
}
String suppressToNLines(String srcstr, int nlines)
{
String[] wrk = split(srcstr, '\n');
int loop = min(wrk.length, nlines + 1);
int strt = 0;
if ( wrk.length == (nlines + 1) ) {
strt = 1;
}
println(loop);
String res = "";
for(int idx = strt; idx < loop; idx++) {
if (res.length() > 0) {
res = res + '\n';
}
res = res + wrk[idx];
}
return res;
}
void draw() {
background(255);
count++;
if (dispLabel.length() > 0) {
dispLabel = dispLabel + "\r\n";
}
dispLabel = dispLabel + str(count);
dispLabel = dispLabel + " 3.14 2.718 6.022 1023";
dispLabel = suppressToNLines(dispLabel, /*nlines=*/5);
if (dispLabel.length() > 0) {
fill(50);
text(dispLabel, 10, 10, 700, 80);
}
}
결과
나름대로 움직이고 있다고 생각한다.
Reference
이 문제에 관하여(Processing/ControlP5 > C++ Builder의 TMemo에 해당하는 것을 구현), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/7of9/items/aa8ca189e0419fa67a47텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)