bưu kiện
ttt;
nhập khẩu
java.io.File;
nhập khẩu
javafx.application.Ứng dụng;
nhập khẩu
javafx.beans.value.ChangeListener;
nhập khẩu
javafx.beans.value.Giá trị quan sát được;
nhập khẩu
javafx.collections.FXCollections;
nhập khẩu
javafx.collections.ObservableList;
nhập khẩu
javafx.scene.Scene;
nhập khẩu
javafx.scene.control.TableColumn;
nhập khẩu
javafx.scene.control.TableView;
nhập khẩu
javafx.scene.control.TreeItem;
nhập khẩu
javafx.scene.layout.BorderPane;
nhập khẩu
javafx.scene.layout.HBox;
nhập khẩu
javafx.scene.layout.Ưu tiên;
nhập khẩu
javafx.stage.Stage;
nhập khẩu
javafx.scene.control.TreeView;
nhập khẩu
javafx.scene.control.cell.PropertyValueFactory;
công cộng
lớp học
TreeViews
mở rộng
Ứng dụng {
công cộng
tĩnh
ObservableList dữ liệu = FXCollections.observableArrayList();
công cộng
tĩnh
void chính(
Sợi dây
[] đối số) {
khởi chạy(đối số);
}
@Ghi đè
công cộng
void start(Giai đoạn chính) {
PrimaryStage.setTitle(
"Triển khai Javafx\"Máy tính của tôi\"Trình quản lý tài nguyên"
);
TreeItem rootItem =
mới
Mục cây<>(
mới
Tập tin(System.getenv(
"TÊN MÁY TÍNH"
)));
vì
(Tệp tệp: File.listRoots()) {
FileTreeItem swedishtem =
mới
FileTreeItem(tệp);
rootItem.getChildren().add(rootitem);
}
TreeView cây =
mới
TreeView(rootItem);
HBox gốc =
mới
Hộp H();
TableView tableView =
mới
TableView<>(dữ liệu);
TableColumn
Sợi dây
> Cột đầu tiên =
mới
BảngCột<>(
"tài liệu"
);
firstColumn.setCellValueFactory(
mới
Thuộc tínhGiá trịNhà máy
Sợi dây
>(
"Tên tệp"
));
firstColumn.setPrefWidth(
120
);
TableColumn
Sợi dây
> Cột thứ hai =
mới
BảngCột<>(
"kiểu"
);
secondColumn.setCellValueFactory(
mới
Thuộc tínhGiá trịNhà máy
Sợi dây
>(
"kiểu"
));
secondColumn.setPrefWidth(
120
);
TableColumn
Sợi dây
> Cột thứ ba =
mới
BảngCột<>(
"Sửa đổi lần cuối"
);
Cột thứ ba.setCellValueFactory(
mới
Thuộc tínhGiá trịNhà máy
Sợi dây
>(
"Sửa đổi lần cuối"
));
Cột thứ ba.setPrefWidth(
200
);
tableView.getColumns().setAll(cột đầu tiên, cột thứ hai, cột thứ ba);
HBox.setHgrow(cây, Ưu tiên.LUÔN LUÔN);
HBox.setHgrow(tableView, Ưu tiên.LUÔN LUÔN);
root.getChildren().addAll(cây,tableView);
cây.getSelectionModel().selectedItemProperty().addListener(
mới
ChangeListener<>>() {
@Ghi đè
công cộng
void đã thay đổi(ObservableValue
mở rộng
TreeItem> có thể quan sát được, TreeItem oldValue,
TreeItem giá trị mới) {
ObservableList<>> treelist = newValue.getChildren();
Danh sách bảng có thể quan sát = FXCollections.observableArrayList();
vì
(TreeItem mục: treelist) {
FileDetail filedetail =
mới
FileDetail(item.getValue());
tablelist.add(filedetail);
}
data.setAll(danh sách bảng);
}
});
primaryStage. setScene(
mới
Cảnh(gốc));
primaryStage.setHeight(
600
);
primaryStage.show();
}
}
Tôi là một lập trình viên xuất sắc, rất giỏi!