JavaFX-如何扩展舞台,场景,窗格中的“窗口”?

时间:2019-02-07 11:17:52

标签: java swing javafx

我引用了window,因为我没有在API中引用任何类,而只是引用了窗口的字面含义(框架,面板,形式等等)。

在Swing中,我曾经制作了一个从JPanel扩展的基类,然后从该基类扩展了所有与视图相关的类。这非常有帮助,因为我可以将这些面板放在自己的JFrames上,也可以放在框架中MyPanel的另一个面板中。在某种程度上,如何显示它们与班级本身无关。而且它们每个都有不同的布局(与从JavaFX布局窗格扩展相反)

如何在Java-FX中做到这一点?

1 个答案:

答案 0 :(得分:1)

您可以扩展Pane类,它是JavaFX中所有窗格的基类。这不会执行任何布局。

https://docs.oracle.com/javase/8/javafx/api/javafx/scene/layout/Pane.html

编辑:我意识到您还可以使用更通用的类Region。此类可以包含其他节点,也可以设置样式。

https://docs.oracle.com/javafx/2/api/javafx/scene/layout/Region.html

例如,如果您需要一个新窗格,则扩展YourCustomRegion

public class YourPane extends YourCustomRegion {

   public YourPane() {
      getChildren().add(new HBox()); //you can add children with this method
   }

}

如果您需要在所有自定义窗格中使用一些通用功能,则可以在YourCustomRegion的扩展名Region中进行。