0

を SWT に追加しようとすると問題が発生します。PAppletレンダリングする必要があるときに空のウィンドウが表示されますPApplet。つまりPApplet、それ自体で動作しますが、SWT ウィンドウでは動作しません。

PAppletEclipse の SWT チュートリアル コードを使用して、フレームに を追加するだけで最初はうまくいくはずだと思いました。どうやらそう簡単ではなかったようです。これが私のコードMyPAppletですPApplet

public static void main(String[] args) {
    Display display = new Display();
    Shell shell = new Shell(display);
    Composite composite = new Composite(shell, SWT.EMBEDDED | SWT.NO_BACKGROUND);
    Frame frame = SWT_AWT.new_Frame(composite);
    PApplet pApplet = new MyPApplet();
    frame.add(pApplet);
    shell.open();
    while (!shell.isDisposed()) {
        if (!display.readAndDispatch()) display.sleep();
    }
    display.dispose();
}

何か不足していますか?

4

4 に答える 4

3

Eclipse で Processing と SWT を融合する方法について、この小さなガイドを作成しました: http://christian.liljedahl.dk/guides/processing-and-swt-in-eclipse

これで解決することを願っています。

私の「トリック」は、処理用のウィンドウを 1 つと、独自のスレッドに UI を備えた別のウィンドウを用意することです。

于 2010-12-26T15:07:42.670 に答える
2

不足しているのは pApplet.init(); だけだと思います。クラスのドキュメントを参照してください: http://dev.processing.org/reference/core/javadoc/processing/core/PApplet.html

于 2010-01-06T18:32:08.633 に答える
1

それを達成する別の方法があると思います。Swing Component をアダプターとして使用します。PApplet を JInternalFrame などの JComponent に追加し、この JComponent を SWT Composite に埋め込みます。

私はそれについていくつかの練習をしました、そしてそれはうまくいきます..

また、このトピックに関する要約をブログに書きました: http://blog.csdn.net/godoorsun/article/details/6747589

(ちなみに、この記事は中国語で書かれています:(、Google翻訳で読めるかもしれませんが、その記事のサンプルコードは理解しやすいです)

于 2011-09-04T11:12:29.593 に答える