一键导入
javafx-file-workflows-search
Build JavaFX file choosers, directory watches, import/export flows, and desktop search interfaces safely.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Build JavaFX file choosers, directory watches, import/export flows, and desktop search interfaces safely.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Build JavaFX 3D modeling tools and print/export workflows with isolated geometry generation and preview rendering.
Choose and integrate mature third-party JavaFX control libraries for forms, productivity widgets, theming, and developer workflow support.
Build JavaFX terminal emulators or shell-style console panes with background process I/O, ANSI handling, and safe FX-thread updates.
Build node-based JavaFX workflow editors, graph canvases, and visual programming surfaces with clean model separation.
Animate JavaFX UIs with Timeline, Transition, Canvas, and AnimationTimer-based render loops.
Manage the JavaFX Application lifecycle, primary stage setup, startup sequencing, and shutdown behavior.
| name | javafx-file-workflows-search |
| description | Build JavaFX file choosers, directory watches, import/export flows, and desktop search interfaces safely. |
| triggers | ["javafx file chooser","fxfilechooser","livedirsfx","javafx desktop search"] |
| compatibility | {"java":"17+","javafx":"21+"} |
| category | ui-advanced |
| tags | ["files","search","import","export","directories"] |
| metadata | {"scope":"repository","maturity":"starter"} |
| allowed-tools | ["view","rg","apply_patch"] |
Use this skill when the application is file-centric: open/save flows, directory watching, CSV or structured imports, or desktop search and indexing tools.
import java.io.File;
import javafx.collections.FXCollections;
import javafx.collections.transformation.FilteredList;
import javafx.scene.control.ListView;
import javafx.scene.control.TextField;
import javafx.scene.layout.BorderPane;
import javafx.stage.FileChooser;
import javafx.stage.Window;
public class FileSearchView extends BorderPane {
private final FilteredList<String> files = new FilteredList<>(
FXCollections.observableArrayList("report.csv", "notes.txt", "summary.json"),
file -> true
);
public FileSearchView(Window owner) {
var query = new TextField();
query.setPromptText("Filter files");
query.textProperty().addListener((obs, oldValue, newValue) ->
files.setPredicate(name -> name.toLowerCase().contains(newValue.toLowerCase()))
);
var list = new ListView<>(files);
var chooser = new FileChooser();
chooser.setTitle("Open File");
list.setOnMouseClicked(event -> {
if (event.getClickCount() == 2) {
File selected = chooser.showOpenDialog(owner);
if (selected != null) {
files.getSource().add(selected.getName());
}
}
});
setTop(query);
setCenter(list);
}
}