⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 displaythreesynchronizedimages.java

📁 Fuzzy C-means algorithm written in Java
💻 JAVA
字号:
/* * Created on May 22, 2005 * @author Rafael Santos (rafael.santos@lac.inpe.br) *  * Part of the Java Advanced Imaging Stuff site * (http://www.lac.inpe.br/~rafael.santos/Java/JAI) *  * STATUS: Complete. *  * Redistribution and usage conditions must be done under the * Creative Commons license: * English: http://creativecommons.org/licenses/by-nc-sa/2.0/br/deed.en * Portuguese: http://creativecommons.org/licenses/by-nc-sa/2.0/br/deed.pt * More information on design and applications are on the projects' page * (http://www.lac.inpe.br/~rafael.santos/Java/JAI). */import java.awt.GridLayout;import java.awt.event.AdjustmentEvent;import java.awt.image.RenderedImage;import javax.swing.JScrollPane;/** * This class represents a Panel which contains three instances of * DisplayJAIWithPixelInfo. * The scrolling bars of all images are synchronized so scrolling one image * will automatically scroll the others. */public class DisplayThreeSynchronizedImages extends DisplayTwoSynchronizedImages  {    /** The DisplayJAIWithPixelInfor for the third image. */  protected DisplayJAIWithPixelInfo dj3;  /** The JScrollPane which will contain the third image */  protected JScrollPane jsp3; /**  * Constructs an instance of this class, setting the components' layout,  * creating three instances of DisplayJAI for the three images and creating/  * registering event handlers for the scroll bars.  * @param im1 the first image (left side)  * @param im2 the second image (middle)  * @param im3 the third image (right side)  */  public DisplayThreeSynchronizedImages(RenderedImage im1,RenderedImage im2,RenderedImage im3)    {    super(im1,im2);    setLayout(new GridLayout(1,3));    // Instance of DisplayJAIWithPixelInfo for the third image.    dj3 = new DisplayJAIWithPixelInfo(im3);    jsp3 = new JScrollPane(dj3); // JScrollPane for that instance.    add(jsp3);    // Retrieve the scroll bars of the images and registers adjustment    // listeners to them.    // Horizontal scroll bar of the third image.    jsp3.getHorizontalScrollBar().addAdjustmentListener(this);    // Vertical scroll bar of the third image.    jsp3.getVerticalScrollBar().addAdjustmentListener(this);    }    /**  * This method changes the image displayed in the right DisplayJAI instance.  * @param newImage the new image  */  public void setImage3(RenderedImage newimage)    {    dj3.set(newimage);    repaint();    }     /**  * This method returns the third image.  * @return the third image.  */  public RenderedImage getImage3()    {    return dj3.getSource();    } /**  * This method returns the third DisplayJAI component.  * @return the third DisplayJAI component.  */  public DisplayJAIWithPixelInfo getDisplayJAIComponent3()    {    return dj3;    } /**  * This method will be called when any of the scroll bars of the instances of  * DisplayJAI are changed. The method will adjust the scroll bar of the other  * DisplayJAI as needed.  * @param e the AdjustmentEvent that ocurred (meaning that one of the scroll  *        bars position has changed.  */  public void adjustmentValueChanged(AdjustmentEvent e)    {    // If the horizontal bar of the first image was changed...    if (e.getSource() == jsp1.getHorizontalScrollBar())      {      // We change the position of the horizontal bar of the 2nd and 3rd images.      jsp2.getHorizontalScrollBar().setValue(e.getValue());      jsp3.getHorizontalScrollBar().setValue(e.getValue());      }     // If the vertical bar of the first image was changed...    if (e.getSource() == jsp1.getVerticalScrollBar())      {      // We change the position of the vertical bar of the 2nd and 3rd images.      jsp2.getVerticalScrollBar().setValue(e.getValue());      jsp3.getVerticalScrollBar().setValue(e.getValue());      }     // If the horizontal bar of the second image was changed...    if (e.getSource() == jsp2.getHorizontalScrollBar())      {      // We change the position of the horizontal bar of the 1st and 3rd images.      jsp1.getHorizontalScrollBar().setValue(e.getValue());      jsp3.getHorizontalScrollBar().setValue(e.getValue());      }    // If the vertical bar of the second image was changed...    if (e.getSource() == jsp2.getVerticalScrollBar())      {      // We change the position of the vertical bar of the 1st and 3rd images.      jsp1.getVerticalScrollBar().setValue(e.getValue());      jsp3.getVerticalScrollBar().setValue(e.getValue());      }    // If the horizontal bar of the third image was changed...    if (e.getSource() == jsp3.getHorizontalScrollBar())      {      // We change the position of the horizontal bar of the 1st and 2nd images.      jsp1.getHorizontalScrollBar().setValue(e.getValue());      jsp2.getHorizontalScrollBar().setValue(e.getValue());      }    // If the vertical bar of the third image was changed...    if (e.getSource() == jsp3.getVerticalScrollBar())      {      // We change the position of the vertical bar of the 1st and 2nd images.      jsp1.getVerticalScrollBar().setValue(e.getValue());      jsp2.getVerticalScrollBar().setValue(e.getValue());      }    } // end adjustmentValueChanged  } // end class

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -