JavaFX:在方法中创建并在另一个类中使用的对象?

时间:2013-04-28 16:23:54

标签: java javafx-2

理论上,我在Java方面并不陌生,但在实践方面是初学者。 我正在尝试使用JavaFX,首先,我正在实施GUI,其中窗口(Stage)具有屏幕尺寸

问题:我想使用screen size object类型Rectangle,并在另一个类中命名为screenBorders(叫Second)。 这是我的简单代码:

public class Test extends Application 
{
    public static void main(String[] args) 
    { launch(args);}

    public static Rectangle screenBorders;

     @Override
     public void start(Stage primaryStage) 
     {
      Group grp=new Group();
      Scene sc = new Scene(grp);
      primaryStage.setScene(sc);
      primaryStage.show();

      screenBorders= new Rectangle (
      Screen.getPrimary().getBounds().getWidth(),
      Screen.getPrimary().getBounds().getHeight()
      );

      Second second= new Second();

     }

}

新文件,新课程

class Second extends Group
{

   public Second () 
   {
    Rectangle second =new Rectangle(screenBorders.getWidth(), screenBorders.getHeight());
   }
//code, code, code, don't know yet what code i will put...
}

在第二节课中,我无法捕捉/使用第一堂课中定义的screensize。(我想使用screenBorders

我尝试在名为screenBorders的第一个和主要类中使用publicstatic关键字声明Test,认为可以在任何地方使用在我的包中,但它确实没有用。

有没有人知道如何链接某个对象与其他类?

2 个答案:

答案 0 :(得分:1)

如果要从Second类访问静态变量,则需要直接声明第一个类名:

Rectangle second = new Rectangle(
    Test.screenBorders.getWidth(), 
    Test.screenBorders.getHeight());

Second类的开头使用import static:

import static Test.*;

答案 1 :(得分:0)

试试Stage.setFullScreen(true),文档为here