Подскажите как реализовать проводник Windows (аналог) - Java

Узнай цену своей работы

Формулировка задачи:

Подскажите как реализовать программа

Решение задачи: «Подскажите как реализовать проводник Windows (аналог)»

textual
Листинг программы
  1. package swing.files;
  2.  
  3. import javafx.application.Application;
  4. import javafx.beans.Observable;
  5. import javafx.collections.FXCollections;
  6. import javafx.scene.Scene;
  7. import javafx.scene.control.SplitPane;
  8. import javafx.stage.Stage;
  9. import org.eclipse.fx.ui.controls.filesystem.*;
  10.  
  11. import java.nio.file.Paths;
  12.  
  13. public class DirectoryViewSample extends Application {
  14.  
  15.   private static RootDirItem rootDirItem;
  16.  
  17.   @Override
  18.   public void start(Stage primaryStage) throws Exception {
  19.     rootDirItem = ResourceItem.createObservedPath(
  20.       Paths.get("C:/temp"));
  21.  
  22.     DirectoryTreeView tv = new DirectoryTreeView();
  23.     tv.setIconSize(IconSize.MEDIUM);
  24.     tv.setRootDirectories(
  25.       FXCollections.observableArrayList(rootDirItem));
  26.  
  27.     DirectoryView v = new DirectoryView();
  28.     v.setIconSize(IconSize.MEDIUM);
  29.  
  30.     tv.getSelectedItems().addListener( (Observable o) -> {
  31.       if( ! tv.getSelectedItems().isEmpty() ) {
  32.         v.setDir(tv.getSelectedItems().get(0));
  33.       } else {
  34.         v.setDir(null);
  35.       }
  36.     });
  37.  
  38.     ResourcePreview prev = new ResourcePreview();
  39.     v.getSelectedItems().addListener((Observable o) -> {
  40.       if( v.getSelectedItems().size() == 1 ) {
  41.         prev.setItem(v.getSelectedItems().get(0));
  42.       } else {
  43.         prev.setItem(null);
  44.       }
  45.     });
  46.  
  47.     SplitPane p = new SplitPane(tv,v, prev);
  48.     p.setDividerPositions(0.3,0.8);
  49.  
  50.     Scene s = new Scene(p,500,500);
  51.     primaryStage.setScene(s);
  52.     primaryStage.show();
  53.   }
  54.  
  55.   public static void main(String[] args) {
  56.     Application.launch(args);
  57.     rootDirItem.dispose();
  58.   }
  59. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 4.083 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут