public boolean SetImage(String imagePath) {
                
        if (null == imagePath) {
            JOptionPane.showMessageDialog(this, "Image Path is Bad! Set In Config!", "Error", JOptionPane.ERROR_MESSAGE);
            return false;
        }

        if (3 > imagePath.length()) {
            JOptionPane.showMessageDialog(this, "Image Path is Too Short! Set In Config!", "Error", JOptionPane.ERROR_MESSAGE);
            return false;
        }

        File filePath = null;

        try {
            filePath = new File(imagePath);
        } catch (NullPointerException e) {
            JOptionPane.showMessageDialog(this, "Image Path is Invalid!", e.getMessage(), JOptionPane.ERROR_MESSAGE);
            return false;
        }

        if (null == filePath) {
            JOptionPane.showMessageDialog(this, "Image Path is NULL!", "Error!", JOptionPane.ERROR_MESSAGE);
            return false;
        }
        
        if (!filePath.exists()) {
            JOptionPane.showMessageDialog(this, "Image Path dosn't exist!", "Error!", JOptionPane.ERROR_MESSAGE);
            return false;
        }

            BufferedImage image = null;
            try {
                try {
                    image = ImageIO.read(filePath);
                } catch (IOException ex) {
                    Logger.getLogger(ImagePanel.class.getName()).log(Level.SEVERE, null, ex);
                    return false;
                }
            } catch (IllegalArgumentException e) {
                JOptionPane.showMessageDialog(this, "Unable To Load Image!", e.getMessage(), JOptionPane.ERROR_MESSAGE);
                return false;

            }

        if (null == image) {
            JOptionPane.showMessageDialog(this, "Image Is Null!", "Error!", JOptionPane.ERROR_MESSAGE);
            return false;
        }
       
        image.getWidth();
        
        SetImageBuffer(image);
        
        return true;
    }