code: @Override
      protected void paintComponent(Graphics g) {
          if (img != null) {
              setOpaque(false);
              Map<RenderingHints.Key, Object> hints = new HashMap<RenderingHints.Key, Object>();
              hints.put(RenderingHints.KEY_INTERPOLATION, RenderingHints.VALUE_INTERPOLATION_BICUBIC);
              hints.put(RenderingHints.KEY_RENDERING, RenderingHints.VALUE_RENDER_QUALITY);
              hints.put(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
              ((Graphics2D) g).addRenderingHints(hints);
              g.drawImage(img, 0, 0, 
                      (int)(DisplayUtils.getScaledSize(img.getWidth()) * scale),
                      (int)(DisplayUtils.getScaledSize(img.getHeight()) * scale), null);
          }
          
          super.paintComponent(g);
      }
docs: Overridden method to paint a background before the rest
  @param g the Graphics context