【问题标题】:Can I run a program on Eclipse that opens up the console, and then opens up a processing window?我可以在 Eclipse 上运行一个打开控制台的程序,然后打开一个处理窗口吗?
【发布时间】:2019-06-07 06:33:34
【问题描述】:

对于我的 AP 计算机科学课程,我正在做一个口袋妖怪性格测验,让你回答几个问题,并告诉你你最喜欢哪个口袋妖怪。我们刚刚学习了Processing,年底的项目是制作一个利用我们所学的程序。所以,对于我的性格测验,我有在 Eclipse 控制台中运行的代码,我让玩家回答几个问题,我会跟踪他们的答案。不同的答案对不同的口袋妖怪进行计数,在程序结束时,您最喜欢的口袋妖怪是计数最多的口袋妖怪。但是,为了合并处理,我想在测验完成后显示口袋妖怪的图片及其音效。不幸的是,我无法弄清楚如何做这样的事情。有什么我可以做的吗?

【问题讨论】:

    标签: java eclipse console processing


    【解决方案1】:

    选项 1 - 发布前测验:

    您可以像这样延迟处理的启动。您可以执行测验,然后创建并运行您的处理类的实例(此处命名为 PokemonSketch)。如何将信息从测验传递到 PApplet 实例取决于您。

    public static void main(String[] args) {
        //Quiz Code
        //Quiz Code
        //Quiz Code
        PokemonSketch sketch = new PokemonSketch();
        PApplet.runSketch(new String[]{""}, sketch);
    }
    

    选项 2 - 启动后测验:

    在这里,PApplet 立即运行,测验在setup() 内完成。

    首先在对 size() 的调用中以 Processing 的 FX2D 渲染模式初始化您的草图:

    @Override
    public void settings() {
        size(x, y, FX2D);
    }
    

    现在我们可以在启动时隐藏窗口,执行测验,并在完成时显示窗口(处理将运行绘图循环)。

    @Override
    public void setup() {
        final PSurfaceFX FXSurface = (PSurfaceFX) surface;
        final Canvas canvas = (Canvas) FXSurface.getNative();
        final Stage stage = (Stage) canvas.getScene().getWindow();
        stage.hide();
    
        final Scanner reader = new Scanner(System.in);
        System.out.println("Enter a number: ");
        final int n = reader.nextInt();
        reader.close();
    
        stage.show();
    }
    

    【讨论】:

      猜你喜欢
      • 2017-05-15
      • 2019-12-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-07-09
      • 2018-05-02
      • 2017-07-16
      • 2012-07-30
      相关资源
      最近更新 更多