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

📄 limitedflicker.java

📁 learning java的源代码。书中每个实例都有相关的代码example。
💻 JAVA
字号:
//file: LimitedFlicker.javaimport java.awt.*;import java.awt.event.*;import javax.swing.*;public class LimitedFlicker extends TerribleFlicker {  int oldX, oldY;  public LimitedFlicker(Image i) { super(i); }  public void mouseDragged(MouseEvent e) {    imageX = e.getX(  );    imageY = e.getY(  );    Rectangle r = getAffectedArea(oldX, oldY, imageX, imageY,        imageWidth, imageHeight);    // update just the affected part of the component    repaint(r);    oldX = imageX;    oldY = imageY;  }  private Rectangle getAffectedArea(int oldx, int oldy,      int newx, int newy, int width, int height) {    int x = Math.min(oldx, newx);    int y = Math.min(oldy, newy);    int w = (Math.max(oldx, newx) + width) - x;    int h = (Math.max(oldy, newy) + height) - y;    return new Rectangle(x, y, w, h);  }  public static void main(String[] args) {    String imageFile = "L1-Light.jpg";    if (args.length > 0)      imageFile = args[0];    Image i = Toolkit.getDefaultToolkit(  ).getImage(        TerribleFlicker.class.getResource(imageFile));    JFrame f = new JFrame("LimitedFlicker");    Container content = new Panel(new BorderLayout(  )) {        public void update(Graphics g) { paint(g); }    };    content.add(new LimitedFlicker(i), BorderLayout.CENTER);    f.setContentPane(content);    f.setSize(300, 300);    f.setLocation(100, 100);    f.addWindowListener(new WindowAdapter(  ) {      public void windowClosing(WindowEvent e) { System.exit(0); }    });    f.setVisible(true);  }}

⌨️ 快捷键说明

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