JavaFX | TitledPane 类
TitledPane 类是 JavaFX 的一部分。 TitledPane 类创建一个带有可以打开或关闭的标题的面板。 TitledPane 类扩展了Labeled类。
类的构造函数:
- TitledPane() :创建一个新的 TitledPane 对象。
- TitledPane(String t, Node n) :创建具有指定内容和标题的新 TitledPane 对象。
常用方法:
Method | Explanation |
---|---|
getContent() | Returns the content of the TitledPane. |
isAnimated() | Returns whether the TitledPane is animated or not. |
isCollapsible() | Returns whether the TitledPane is collapsible or not. |
isExpanded() | Returns whether the TitledPane is expanded or not. |
setAnimated(boolean v) | Sets the animated state of TiledPane. |
setCollapsible(boolean v | Sets the collapsible state of TiledPane. |
setContent(Node v) | Sets the content pane of a TitledPane. |
setExpanded(boolean v) | Sets the expanded state of the TitledPane. |
下面的程序说明了 TitlePane 类的使用:
- 用于创建 TitledPane 并向其添加标签的Java程序:
- 在这个程序中,我们将创建一个 TitledPane 并为其添加标签。
- 标签将包含使用 fileInputStream 导入的图片。
- 将此图片添加到标签中。
- 将标签添加到 titled_pane。
- 现在将 titled_pane 添加到场景中,并将场景添加到舞台上。
- 调用show()函数以显示最终结果。
// Java program to create a TitledPane // and add a label to it. import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.*; import javafx.scene.layout.*; import javafx.stage.Stage; import javafx.scene.layout.*; import javafx.scene.paint.*; import javafx.scene.text.*; import javafx.geometry.*; import javafx.scene.layout.*; import javafx.scene.shape.*; import javafx.scene.paint.*; import javafx.scene.*; import java.io.*; import javafx.scene.image.*; public class TitledPane_1 extends Application { // launch the application public void start(Stage stage) { try { // set title for the stage stage.setTitle("Titled Pane"); // create a input stream FileInputStream input = new FileInputStream("D:\\GFG.png"); // create a image Image image = new Image(input); // create a image View ImageView imageview = new ImageView(image); // create Label Label label = new Label("", imageview); // create TiledPane TitledPane titled_pane = new TitledPane("Titled Pane", label); // create a scene Scene scene = new Scene(titled_pane, 500, 300); // set the scene stage.setScene(scene); stage.show(); } catch (Exception e) { System.out.println(e.getMessage()); } } // Main Method public static void main(String args[]) { // launch the application launch(args); } }
输出:
- 用于创建 TitledPane 的Java程序,说明它是否动画、是否可折叠并为其添加标签:
- 在这个程序中,我们将创建一个 TitledPane 并为其添加标签。
- 标签将包含使用 fileInputStream 导入的图片。
- 将此图片添加到标签,并将标签添加到titled_pane 。
- 将titled_pane添加到场景中,并将场景添加到舞台。
- 调用show()函数以显示最终结果。
- 使用setAnimated()函数将动画设置为 false,使用setCollapsable()函数将可折叠设置为 false。
// Java program to create a TitledPane, state // whether it is animated or not, collapsible // or not and add a label to it import javafx.application.Application; import javafx.scene.Scene; import javafx.scene.control.*; import javafx.scene.layout.*; import javafx.stage.Stage; import javafx.scene.layout.*; import javafx.scene.paint.*; import javafx.scene.text.*; import javafx.geometry.*; import javafx.scene.layout.*; import javafx.scene.shape.*; import javafx.scene.paint.*; import javafx.scene.*; import java.io.*; import javafx.scene.image.*; public class TitledPane_2 extends Application { // launch the application public void start(Stage stage) { try { // set title for the stage stage.setTitle("Titled Pane"); // create a input stream FileInputStream input = new FileInputStream("D:\\GFG.png"); // create a image Image image = new Image(input); // create a image View ImageView imageview = new ImageView(image); // create Label Label label = new Label("", imageview); // create TiledPane TitledPane titled_pane = new TitledPane("Titled Pane", label); // set Animated titled_pane.setAnimated(false); // set collapsible titled_pane.setCollapsible(false); // create a scene Scene scene = new Scene(titled_pane, 500, 300); // set the scene stage.setScene(scene); stage.show(); } catch (Exception e) { System.out.println(e.getMessage()); } } // Main Method public static void main(String args[]) { // launch the application launch(args); } }
输出:
注意:以上程序可能无法在在线 IDE 中运行,请使用离线编译器。
参考: https://docs.oracle.com/javase/8/javafx/api/javafx/scene/control/TitledPane.html