Просмотр изображений. Слайд шоу - Java

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

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

Помогите!!Надо сделать к этой программе чтобы когда изображения нет, выводило в окно ,где именно и происходит это слайдшоу ,надпись "File not found", и в конце когда все изображения было показано "The end", так же чтобы был установленный шрифт и размер букв
package imageSlideShows_new;
 
import java.awt.Color;
import java.awt.Image;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
 
import javax.swing.*;

@SuppressWarnings("serial")
public class Main extends JFrame{
    JLabel pic;
    Timer tm;
    int x = 0;

    String[] list = {
                      "C:/Users/Sophia/Desktop/imgslides/1.jpg",
                      "C:/Users/Sophia/Desktop/imgslides/2.jpg",
                      "C:/Users/Sophia/Desktop/imgslides/3.png",
                      "C:/Users/Sophia/Desktop/imgslides/4.jpg",
                      "C:/Users/Sophia/Desktop/imgslides/5.png",
                      "C:/Users/Sophia/Desktop/imgslides/6.gif",
                      "C:/Users/Sophia/Desktop/imgslides/7.gif",
                      "C:/Users/Sophia/Desktop/imgslides/8.png"
                    };
    
    public Main(){
        super("Images SlideShow");
        pic = new JLabel();
        pic.setBounds(40, 30, 700, 300);

        SetImageSize(7);

        tm = new Timer(2500,new ActionListener() {
 
            @Override
            public void actionPerformed(ActionEvent e) {
                SetImageSize(x);
                x += 1;
                if(x >= list.length )
                {
                    x=0;
                    
                     }
                              }
            }
        });
        add(pic);
        tm.start();
        setLayout(null);
        setSize(800, 400);
        getContentPane().setBackground(Color.decode("#3c3a2a"));
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
        }
    
    public void SetImageSize(int i){
        ImageIcon icon = new ImageIcon(list[i]);
        Image img = icon.getImage();
        Image newImg = img.getScaledInstance(pic.getWidth(), pic.getHeight(), Image.SCALE_SMOOTH);
        ImageIcon newImc = new ImageIcon(newImg);
        pic.setIcon(newImc);
    }
 
public static void main(String[] args){ 
      
    new Main();
}
}

Решение задачи: «Просмотр изображений. Слайд шоу»

textual
Листинг программы
import java.awt.Color;
import java.awt.Font;
import java.awt.Image;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.*;
 
/**
 *
 * @author Nicholas White
 */
public class Main extends JFrame {
 
    JLabel pic;
    Timer tm;
    int x = 0;
    Font font = new Font("Helvetica", Font.BOLD, 40);
    String[] list = {
        "C:/Users/Пользователь/Documents/NetBeansProjects/SlideShow/build/classes/slideshow/1.jpg",
        "C:/Users/Пользователь/Documents/NetBeansProjects/SlideShow/build/classes/slideshow/2.png",
        "C:/Users/Пользователь/Documents/NetBeansProjects/SlideShow/build/classes/slideshow/3.png",
        "C:/Users/Пользователь/Documents/NetBeansProjects/SlideShow/build/classes/slideshow/4.png",
        "C:/Users/Пользователь/Documents/NetBeansProjects/SlideShow/build/classes/slideshow/5.png",
        ""};
 
    public Main() {
        super("Images SlideShow");
        pic = new JLabel();
        pic.setBounds(40, 30, 700, 300);
        pic.setForeground(Color.white);
        pic.setFont(font);
 
        tm = new Timer(2500, new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                ImageIcon ii = getResizedImage(x);
                pic.setText("File Not Found");
                x += 1;
 
                if (x >= list.length) {
                    x = 0;
                    pic.setText("The End");
                }
 
                pic.setIcon(ii);
            }
        });
 
        add(pic);
        tm.start();
        setLayout(null);
        setSize(800, 400);
        getContentPane().setBackground(Color.decode("#3c3a2a"));
        setLocationRelativeTo(null);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setVisible(true);
    }
 
    public static void main(String[] args) {
        new Main();
    }
 
    private ImageIcon getResizedImage(int i) {
        ImageIcon icon = new ImageIcon(list[i]);
        Image img = icon.getImage();
        
        Image newImg = img.getScaledInstance(pic.getWidth(), pic.getHeight(), Image.SCALE_SMOOTH);
        ImageIcon newImc = new ImageIcon(newImg);
        return newImc;
    }
 
}

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


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

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

6   голосов , оценка 4 из 5