Sunteți pe pagina 1din 2

import javax.imageio.

ImageIO;
import javax.swing.*;
import java.awt.*;
import java.awt.event.WindowEvent;
import java.awt.event.WindowListener;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;
import java.util.Scanner;
/**
* Created by Emilian Blaga on 22.04.2017.
*
* Programul propus de mine folosete clasele Window, Frame i JLabel pentru a afia u
n obiect de tip BufferedImage ce
* con ine imaginea dat de utilizator.
*
* Pe timpul rulrii, programul citete mai nti calea fiierului de tip imagine pe care
trebuie s-l afieze. Apoi
* se creaz un obiect de tip Frame cruia i se adaug un element JLabel ce contine la
randul su imaginea introdus de
* utilizotor. Toate acestea sunt ntr-un container Window.
* n final, se seteaz toate containerele ca fiind vizibile i se ateapt ca utilizotoru
l aplica iei s o nchid.
*/
public class ImageView {
public static String inputPath = ""; //calea fiierui surs de tip imagine
//citete calea fiierului de tip imagine
private static void readImagePath(){
System.out.print("Introduceti calea imaginii (ex: C:\\Users\\...\\nume_f
isier.extensie): ");
Scanner terminalInput = new Scanner(System.in);
inputPath = terminalInput.nextLine();
}
public static void main(String[] args){
readImagePath();
Frame frame = new Frame("ImageViewer");
Window window = new Window(frame);
frame.setSize(1000,650); // dimensiunea cadrului
try {
BufferedImage myPicture = ImageIO.read(new File(inputPath)); //ncrcare
imagine din fisier
JLabel picLabel = new JLabel(new ImageIcon(myPicture)); //instan iere
obiecgt de tip JLabel
frame.add(picLabel); //adaugare JLabel n cadru
picLabel.setVisible(true); //afisare JLabel n cadru
}catch (IOException ex){
ex.printStackTrace();
}
window.setVisible(true); //afisare fereastra
frame.setVisible(true); //afisare cadru n fereastra
//nchidere fereastra la apasarea butonului X
frame.addWindowListener(new WindowListener() {
@Override
public void windowOpened(WindowEvent e) {
//nu face nimic
}
@Override
public void windowClosing(WindowEvent e) {
System.exit(0);
}
@Override
public void windowClosed(WindowEvent e) {
//nu face nimic
}
@Override
public void windowIconified(WindowEvent e) {
//nu face nimic
}
@Override
public void windowDeiconified(WindowEvent e) {
//nu face nimic
}
@Override
public void windowActivated(WindowEvent e) {
//nu face nimic
}
@Override
public void windowDeactivated(WindowEvent e) {
//nu face nimic
}
});
}
}

S-ar putea să vă placă și