我希望这是这个问题的正确网站,如果不是,请道歉。
在处理草图中,我可以控制显示窗口的初始位置吗?必须首先调用的size()
函数只允许指定宽度和高度。
这已经发生了一个可能的问题,现在我开始使用G4P(GUI for Processing)库,其中GWindow()
的位置有位置参数,但它们似乎不是相对于主显示窗口,但显示整个显示器屏幕,我希望额外的窗口出现在主窗口中。当我想将程序从我的桌面(监视器1280×1024像素)转移到我的笔记本电脑(1280乘800像素)时,这将特别重要。
答案 0 :(得分:6)
假设您正在谈论Java模式,那么您可以访问一个名为frame的变量。
但是,在setup()函数完成之后,frame变量似乎不可用,因此您必须在此之后访问它。这对我有用:
boolean frameMoved = false;
void setup() {
size(500, 500);
}
void draw() {
if(!frameMoved){
frame.setLocation(100, 100);
frameMoved = true;
}
background(0);
}
这可能是一种更聪明的方法,但它对我有用。
答案 1 :(得分:1)
我对处理3.5.1中的frame.setLocation解决方案有负面作用 在使用surface.setsize从变量调整草图大小之后。 下面的代码无需燃烧器布尔值即可工作。
void setup() {
int myVariableW=600;
surface.setSize(myVariableW,400);
}
void draw() {
background(0);
if(1==frameCount) surface.setLocation(150,100);
ellipse(300,300,200,100);
}