Processingでアプリケーションを作成し始めたばかりで、BorderLayout.CENTERを使用してJpprameオブジェクトにPAppletオブジェクトを配置すると、予期しない動作が発生します。処理の予測不可能な動作
PAppletの幅は、JFrameの幅と高さより100小さい。 「実行」をクリックすると、プログラムが画面いっぱいに表示されてスムーズに実行されることがありますが、他の実行では、画面の左上からPAppletが開始し、画面の下部に100 、かなり遅れています。
私が正直であれば何が起こっているのか分かりません。
これはスムーズに実行結果である:
これは予測できないものです:
ここで私が使用しているコードです:
PAppletは、サブクラス
public class JCanvas extends PApplet {
/**
* PApplet method - performs all setup actions
*/
public void setup(){
size(1400,900,P3D);
background(80);
}
/**
* PApplet method - All drawing occurs here
*/
public void draw(){
background(80);
pushMatrix();
translate(mouseX,mouseY, -199);
fill(220,0,0);
box(120,500,90);
popMatrix();
}
}
私は、その後包み、私は信じるように導かだSwingとAWT(間にいくつかの安定性の問題があったawt.FrameでJFrameのを交換しようとした ビューアクラス
public final class EuroViewer {
private final static int WIDTH = 1500;
private final static int HEIGHT = 1000;
private final static boolean RESIZABLE = false;
public static void main(String[] arguments){
final JFrame frame = new JFrame("Eurographics PApplet");
JCanvas sketchCanvas = new JCanvas();
frame.add(sketchCanvas);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(WIDTH, HEIGHT);
frame.setResizable(RESIZABLE);
frame.setLocationRelativeTo(null);
sketchCanvas.init();
frame.setVisible(true);
}
}このパプチュールのケースでは、PAppletは組み立てられています)。
しかし、驚くほど十分ですが、問題を解決してくれるフレームはありません。しかし、私はいつもJFrameを使っていましたが、コンテナを使ったGUI作業はいつもSwingでやっていましたので、誰も知識を共有して何が起こっているのかを説明し、修正が可能かどうか疑問に思っていました。この問題。
ありがとうございました。