document.write('
Data hosted with ♥ by Pastebin.com - Download Raw - See Original
  1. /**
  2.  * Class untuk komponen Swing yang dapat menampilkan OFImage.
  3.  * Dibuat sebagai subclass JComponent
  4.  * fungsionalitas pengaturan OFImage.
  5.  *
  6.  * @author Ghifari A.U
  7.  *
  8.  */
  9. import java.awt.*;
  10. import javax.swing.*;
  11. import java.awt.image.*;
  12.  
  13.  
  14. public class ImagePanel extends JComponent
  15. {
  16.     // Lebar dan tinggi panel saat ini
  17.     private int width, height;
  18.    
  19.     // Internal image buffer untuk painting, ditampilkan di screen.
  20.     private OFImage panelImage;
  21.    
  22.     public ImagePanel()
  23.     {
  24.         width = 360; // Ukuran panel
  25.         height = 240;
  26.         panelImage = null;
  27.     }
  28.    
  29.     public void setImage(OFImage image)
  30.     {
  31.         if (image != null)
  32.         {
  33.             width = image.getWidth();
  34.             height = image.getHeight();
  35.             panelImage = image;
  36.             repaint();
  37.         }
  38.     }
  39.    
  40.     public void clearImage()
  41.     {
  42.         Graphics imageGraphics = panelImage.getGraphics();
  43.         imageGraphics.setColor(Color.LIGHT_GRAY);
  44.         imageGraphics.fillRect(0, 0, width, height);
  45.         repaint();
  46.     }
  47.    
  48.     // Method di bawah untuk mendefinisikan ulang
  49.     // method warisan dari superclass.
  50.    
  51.     public Dimension getPreferredSize()
  52.     {
  53.         return new Dimension(width, height);
  54.     }
  55.    
  56.     public void paintComponent(Graphics g)
  57.     {
  58.         Dimension size = getSize();
  59.         g.clearRect(0, 0, size.width, size.height);
  60.        
  61.         if (panelImage != null)
  62.         {
  63.             g.drawImage(panelImage, 0, 0, null);
  64.         }
  65.     }
  66. }
');