정보나눔

오픈소스하드웨어 프로젝트에 대한 다양한 정보를 나누는 공간입니다.

[프로세싱] 창 여러개 띄우기 질문입니다
김진하 | 2015-09-25

안녕하세요 이번에 프로세싱을 배우게 된 초보자입니다

제가 지금 하려는 작업은 프로세싱을 실행시켰을 때 나오는 스케치 창을 2개로 띄우는 것입니다.

일반적으로 그냥 실행시키면 하나의 창만 나옵니다.

제가 원하는 건 2개의 창을 띄워서 예를 들어 한 쪽 창(A라고 가정)에서 버튼을 클릭했을 때

다른 쪽 창(B라고 가정)에서 이미지 혹은 도형을 출력시키는 것입니다.

그리고 두 개의 모니터를 연결해서 한 모니터에서 A 창을 띄워 버튼을 제어하면 다른 모니터에서는 B 창에서 이미지가 출력되는 것을 만들고자 합니다.

스케치 창을 어떤 모니터에 출력시키는지 설정하는 것은 프로세싱 3.0에서 나온 fullScreen(모니터 번호) 명령어로 쉽게 가능하더군요.

문제는 스케치창을 2개 띄우는 것인데 여기서 막혔습니다 ㅜㅜ

 

http://talkingaboutme.tistory.com/372

 

http://forum.processing.org/one/topic/multiple-windows.html

 

 

import java.awt.Frame;


PFrame f;
secondApplet s;

void setup() {
 size(320, 240);
 PFrame f = new PFrame();
}

void draw() {
  background(255,0,0);
   fill(255);
   rect(10,10,frameCount%0,10);
   s.background(0, 0, 255);
   s.fill(100);
   s.rect(10,20,frameCount%0,10);
   s.redraw();
}

public class PFrame extends Frame{
    public PFrame() {
        setBounds(100,100,400,300);
        s = new secondApplet();
        add(s);
        s.init();
        show();
    }
}

public class secondApplet extends PApplet {
    public void setup() {
        size(400, 300);
        noLoop();
    }

    public void draw() {
    }
} 

인터넷에 검색해서 위 링크에 있는 샘플 코드를 그대로 실행시켜보았는데 add(s)에서 다음과 같은 에러가 출력이 됩니다

The method add(Component) in the type Container is not applicable for the arguments(multi_monitor_test.secondApplet)

 

(그리고 import java.awt.Frame을 안해주면 PFrame 정의한 부분에서 Frame을 인식을 못하더라고요)

어쨋든 한글로 설명되어 있는 블로그에서 나온데로 했는데도 위와 같은 에러가 출력이 되는데 무엇이 문제인지 잘 모르겠습니다...

스케치 창만 2개로 출력이 되면 그 이후 작업을 진행할 수 있을 것 같은데 어떻게 해결하는지 도와주세요 ㅜㅜ

이전글   |    지니어스키트에 있는 오렌지보드와 스마트폰을 연결할수 있나요 ?... 2015-09-24
다음글   |    아두이노 다른 웹서버와 연동 질문 드립니다. ... 2015-09-26