0

我正在处理中写一个草图,我很好奇如何获得草图所在的操作系统窗口的位置。如果我使用getPosition()(部分java.awt),我只能得到视口在窗口中的位置。

4

1 回答 1

2

您可以使用getLocationOnScreen()继承自java.awt.Component,但您需要先确保小程序isShowing()

void draw(){
  if(frame.isShowing()) println(frame.getLocationOnScreen());
}

或更图形化:

void draw(){
  if(frame.isShowing()) {
    java.awt.Point pt = frame.getLocationOnScreen();
    background(255);
    rectMode(CENTER);
    rect(map(pt.x,0,displayWidth,0,width),//use screenWidth instead of displayWidth in Processing 1.5.1 or older
         map(pt.y,0,displayHeight,0,height),//use screenHeight instead of displayHeight in Processing 1.5.1 or older
         10,10);
  }
}

在哪里

Frame frame = ( (PSurfaceAWT.SmoothCanvas) ((PSurfaceAWT)surface).getNative()).getFrame();

(对于其他渲染器,例如P2DFX2D查看此答案

于 2012-12-16T12:25:48.177 回答