广州北大青鸟计算机职业培训学校
互联网技术培训、软件技术培训、大数据培训、云计算培训、数据分析培训信息网
当前位置:网站首页 > 软件教程 > Java技术 > 正文

惠州JavaFX自定义列表视图是什么?_北大青鸟IT学校

作者:邓华发布时间:2021-05-20分类:Java技术浏览:763


导读:相信大家都很好奇JavaFX自定义列表视图是什么?那么接下来我们一起跟着惠州北大青鸟老师一起来学习一下JavaFX自定义列表视图是什么。

相信大家都很好奇JavaFX自定义列表视图是什么?那么接下来我们一起跟着惠州北大青鸟老师一起来学习一下JavaFX自定义列表视图是什么。

以下代码显示了如何将矩形绘制到ListView单元格。

它通过扩展ListCell创建一个自定义单元格。updateItem接收项目参数中的单元格值。然后它绘制一个红色的矩形。

 static class ColorRectCell extends ListCell<String> {
   @Override    public void updateItem(String item, boolean empty) {
     super.updateItem(item, empty);
     Rectangle rect = new Rectangle(100, 20);      if (item != null) {
       rect.setFill(Color.RED);
       setGraphic(rect);
     }
   }
 }

完整的源代码

import javafx.application.Application;import javafx.collections.FXCollections;import javafx.collections.ObservableList;import javafx.scene.Scene;import javafx.scene.control.ListCell;import javafx.scene.control.ListView;import javafx.scene.layout.StackPane;import javafx.scene.paint.Color;import javafx.scene.shape.Rectangle;import javafx.stage.Stage;public class Main extends Application {  public static void main(String[] args) {
   launch(args);
 }

 @Override  public void start(Stage primaryStage) {

   ObservableList<String> data = FXCollections.observableArrayList();

   ListView<String> listView = new ListView<String>(data);
   listView.setPrefSize(200, 250);
   listView.setEditable(true);

   data.addAll("A", "B", "C", "D", "E");

   listView.setItems(data);
   listView.setCellFactory((ListView<String> l) -> new ColorRectCell());
   StackPane root = new StackPane();
   root.getChildren().add(listView);
   primaryStage.setScene(new Scene(root, 200, 250));
   primaryStage.show();
 }  static class ColorRectCell extends ListCell<String> {
   @Override    public void updateItem(String item, boolean empty) {
     super.updateItem(item, empty);
     Rectangle rect = new Rectangle(100, 20);      if (item != null) {
       rect.setFill(Color.RED);
       setGraphic(rect);
     }
   }
 }
}

上面的代码生成以下结果。

JavaFX列表视图2.png

想学Java的同学们,可以来惠州北大青鸟新方舟校区详细了解。

标签:惠州计算机JAVA软件开发惠州计算机Java软件开发惠州计算机JAVA培训惠州计算机JAVA软件开发学校惠州计算机Java软件开发培训JAVAJava软件开发北大青鸟IT计算机学校北大青鸟IT软件学校北大青鸟IT学校


Java技术排行
标签列表
网站分类
文章归档
最近发表