changeimagetool.java

来自「java绘图方面的源码,java日期选择控件源码」· Java 代码 · 共 55 行

JAVA
55
字号
package com.sunking.tp.tool;

import com.sunking.tp.framework.*;
import com.sunking.tp.util.*;
import com.sunking.tp.swing.*;
import java.awt.event.MouseEvent;
import javax.swing.*;
/**
 * <p>Title: ChangeImageTool</p>
 * <p>Description: 改变JTPImage显示图片的工具</p>
 * <p>Copyright: Copyright (c) 2003</p>
 * <p>Company: </p>
 * @author <a href="mailto:sunkingxie@hotmail.com">SunKing</a>
 * @version 1.0
 */
public class ChangeImageTool extends AbstractTool {
    JTPComponent jtpImages[];
    public ChangeImageTool(Desktop desk, javax.swing.Icon icon) {
        super(desk);
        setToolTip(JTPUtil.getString("ChangeImageTool_TIP"));
        setIcon(icon);
        jtpImages = desk.getSelectionJTPComponent();

    }

    /**
     *启用工具
     */
    public void enabledTool() {
        super.enabledTool();
        ImageIcon icon = null;
        if (isSelectionJTPImage() && (icon = JTPUtil.getImageIconFromChooser()) != null) {
            UndoableEditFactory.getDefault().startEdit(
                UndoableEditFactory.CHANGE_IMAGE, desk, jtpImages);
            for (int i = 0; i < jtpImages.length; i++) {
                ( (JTPImage) jtpImages[i]).setIcon(icon);
            }
            UndoableEditFactory.getDefault().stopEdit(null);
        }
        desk.setTool(null);
    }

    /**
     * 当前是否全部选的是JTPImage组件
     * @return
     */
    boolean isSelectionJTPImage() {
        for (int i = 0; i < jtpImages.length; i++) {
            if (! (jtpImages[i] instanceof JTPImage))
                return false;
        }
        return true;
    }

}

⌨️ 快捷键说明

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