Tworzę galerię obrazów za pomocą javafx. W Internecie znalazłem wiele informacji na ten temat, ale nie mogłem uzyskać odpowiedniej pomocy w tym zakresie. Muszę stworzyć jedną galerię obrazów, taką jak przeglądarka Picasa. wszystkie obrazy są w widoku miniatur w moim widoku obrazu, a następnie po wybraniu obrazu w wyskakującej przeglądarce. Zrobiłem to za jakiś kod, ale nie uzyskałem poprawnego wyniku. Wszystkie obrazy z folderu przerysowuje się z tych samych współrzędnych. Poniżej znajduje się mój kod i wynik.Praca nad tworzeniem galerii obrazów w JavaFX. nie mogę poprawnie wyświetlić obrazu
@Override
public void initialize(URL url, ResourceBundle rb) {
String path = "/home/ubuntu/eclipse with liferay/Desktop/imagetest/";
File folder = new File(path);
File[] listOfFiles = folder.listFiles();
for (final File file : listOfFiles) {
ImageView imageView;
imageView = createImageView(file);
imagecontainer.getChildren().addAll(imageView);
}
}
private ImageView createImageView(final File imageFile) throws FileNotFoundException, FileNotFoundException, FileNotFoundException, FileNotFoundException {
// DEFAULT_THUMBNAIL_WIDTH is a constant you need to define
// The last two arguments are: preserveRatio, and use smooth (slower) resizing
ImageView imageView = null;
try {
final Image image;
image = new Image(new FileInputStream(imageFile), DEFAULT_THUMBNAIL_WIDTH, 0, true, true);
imageView = new ImageView(image);
} catch (FileNotFoundException ex) {
Logger.getLogger(GalleryController.class.getName()).log(Level.SEVERE, null, ex);
}
return imageView;
}
}
uprzejmie mi pomóc rozwiązać mój problem. Chcę wyświetlać obrazy pojedynczo jako widok miniatur.
Co to jest "imageContainer"? –
@James_D: kontener obrazu to okienko FXML. –
@James_D: przykro mi, zapomnę wspomnieć o okienku: | –