Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import java.awt.*;
- import javax.swing.*;
- import java.awt.image.*;
- /**
- * An ImagePanel untuk menampilkan OFimage
- * dengan membuat sebauh subclass dari Jcomponet dengan fungsi menampilkan
- * permukaan component nya
- *
- * @author Yusuf Anfasya
- * @version 1
- */
- public class ImagePanel extends JComponent
- {
- // ukuran tinggi dan lebar panel
- private int lebar,tinggi;
- // sebuah gambar sementara untuk pewarnaan pada tampilan sebenarnya
- // gambar ini akan di salin ke layar
- private OFImage panelGambar;
- /**
- * membuat panel imagepanel
- */
- public ImagePanel()
- {
- lebar = 360; // size untuk panel dalam keadaan kosong
- tinggi = 240;
- panelGambar = null;
- }
- /**
- * mengatur gambar yang akan ditampilkan
- *
- * @param image untuk gambar yang ditampilkan
- */
- public void setImage(OFImage gambar)
- {
- if(gambar != null) {
- lebar = gambar.getWidth();
- tinggi= gambar.getHeight();
- panelGambar = gambar;
- repaint();
- }
- }
- /**
- * mengosongkan paneel
- */
- public void clearImage()
- {
- Graphics imageGraphics = panelGambar.getGraphics();
- imageGraphics.setColor(Color.LIGHT_GRAY);
- imageGraphics.fillRect(0, 0, lebar, tinggi);
- repaint();
- }
- // The following methods are redefinitions of methods
- // inherited from superclasses.
- /**
- * untuk mengatur bentuk seberapa besar yang dibutuhkan
- * mehtods nya dipanggil dengan layout manager untuk menempatkan
- * component
- *
- * @return diutmakan dimensi untuk komponennya
- */
- public Dimension getPreferredSize()
- {
- return new Dimension(lebar, tinggi);
- }
- /**
- * komponent ini harus di tampilkan kembali. menyalin gambar internal
- * ke layar(dengan Swing Screen painter setiap saat apabila ingin ditampilkan)
- *
- * @param graphic context bisa digunakan untuk menggambar komponen ini
- */
- public void paintComponent(Graphics g)
- {
- Dimension size = getSize();
- g.clearRect(0, 0, size.width, size.height);
- if(panelGambar != null) {
- g.drawImage(panelGambar, 0, 0, null);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement