当前位置: 首页 > 知识库问答 >
问题:

如何在加工过程中创建单个草图的多个窗口?

冯驰
2023-03-14

我想通过在处理中使用一个草图来创建两个窗口。

我想做的是,如果我在一个窗口中单击一个按钮,那么一些图像就会出现在另一个窗口中。

我搜索了谷歌,找到了一些例子。实际上,我在这个“堆栈溢出网络”中发现了相同的问题。以下是链接。

在处理中为单个草图创建多个窗口http://forum.processing.org/one/topic/multiple-windows-2-4-2011.html

这是第二个链接的代码。

import java.awt.Frame;
PFrame f;
secondApplet s;
//f = new PFrame();
void setup() {
 size(320, 240);
 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)处得到以下错误消息;。

类型容器中的add(Component)方法不适用于参数(multi_window_test.secondApplet)

第一个链接的第一条注释的代码与此类似,但当我运行此代码时,会收到相同的错误消息。

我找到的其他示例代码都是类似的。它们都创建了PFrame类和扩展PApplet的第二个小程序。他们说这些代码运行良好,但我不能运行这些代码。

我找不到错误消息的原因。除了我之外,其他人在运行这个示例代码时似乎没有问题。如果有人知道答案,请帮助我。

此外,如果有其他简单的方法在一个草图中创建多个窗口,请告诉我。

共有1个答案

钱浩荡
2023-03-14

产生错误消息的原因不言而喻:add()函数需要一个组件,而PApplet不是组件。这是因为从Processing 3开始,PApplet不再扩展Applet,因此将其用作组件的旧代码将不再工作。

相反,考虑一下我对这个问题的回答。基本上,只需为第二个窗口创建一个扩展PApplet的类,然后调用PApplet。运行sketch()使用第二个PApplet作为参数:

void setup() {
  size(100, 100);

  String[] args = {"TwoFrameTest"};
  SecondApplet sa = new SecondApplet();
  PApplet.runSketch(args, sa);
}

void draw() {
  background(0);
  ellipse(50, 50, 10, 10);
}     

public class SecondApplet extends PApplet {

  public void settings() {
    size(200, 100);
  }
  public void draw() {
    background(255);
    fill(0);
    ellipse(100, 50, 10, 10);
  }
}

 类似资料:
  • 问题内容: 我想通过在“处理”中仅使用一个草图来创建两个窗口。 我想做的是,如果我在一个窗口中单击一个按钮,则某些图像会出现在另一个窗口中。 我搜索了Google并找到了一些示例。实际上,我在此“堆栈溢出网络”中发现了相同的问题。这里是链接。 在处理中 http://forum.processing.org/one/topic/multiple- windows-2-4-2011.html中 创建

  • 问题内容: 如何在“处理”中创建单个草图的多个窗口? 实际上我想在一个窗口中检测并跟踪特定颜色(通过网络摄像头),然后将检测到的坐标显示为另一个窗口中的点,直到现在我仍可以在检测到该颜色的同一个窗口中显示这些点。我想将其拆分为两个不同的窗口。 问题答案: 您需要创建一个新框架和一个新的PApplet …这是一个示例草图:

  • 如何在加工过程中创建单个草图的多个窗口? 实际上,我想在一个窗口中检测并跟踪特定的颜色(通过网络摄像头),并在另一个窗口中将检测到的坐标显示为一个点。到目前为止,我能够在同一个窗口中显示检测到它的点。但我想把它分成两个不同的窗口。

  • 我目前正在研究一种数据可视化技术,它从电影中获取信息,实时播放并同时创建。为此,我想有两个独立的草图窗口。一个窗口应显示实时播放的电影,另一个窗口应显示正在进行的可视化。 我似乎不知道如何轻松地添加另一个草图窗口,并尝试了一些在处理3中不再工作的示例。 然后我偶然发现了这个例子:https://gist.github.com/atduskgreg/666e46c8408e2a33b09a 尽管我可

  • 我想在两个窗口中播放视频,只需在处理过程中使用一个草图。我还想使用串行通信。。串行通信很好,但视频不起作用。我猜程序找不到视频的位置。 我在处理中搜索了单个草图的多个窗口。我提到了这个。如何在加工过程中创建单个草图的多个窗口? 这是我写的代码。 我希望你能帮帮我拜托

  • (附:我不太懂加工)