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

📄 jinternalframeadapter.java

📁 SWING的界面UI包 SWING的界面UI包
💻 JAVA
字号:
/* * JInternalFrameAdapter.java * * Created on 2007-9-4, 0:01:53 * * To change this template, choose Tools | Templates * and open the template in the editor. */package dyno.swing.designer.beans.adapters.container;import dyno.swing.designer.beans.AdapterBus;import dyno.swing.designer.beans.ComponentAdapter;import dyno.swing.designer.beans.ContainerAdapter;import dyno.swing.designer.beans.DesignerEditor;import dyno.swing.designer.beans.HoverPainter;import dyno.swing.designer.beans.SwingDesigner;import dyno.swing.designer.beans.Util;import dyno.swing.designer.beans.editors.TextEditor;import dyno.swing.designer.beans.painters.InternalFramePainter;import java.awt.Component;import java.awt.Container;import java.awt.Point;import java.awt.Rectangle;import java.awt.event.MouseEvent;import javax.swing.JInternalFrame;import javax.swing.JMenu;import javax.swing.JPopupMenu;import javax.swing.JSeparator;import javax.swing.SwingUtilities;/** * * @author William Chen */public class JInternalFrameAdapter extends AbstractContainerAdapter {    protected JInternalFrame frame;    protected Container contentPane;    protected HoverPainter painter;    private JPopupMenu popupMenu;    public JInternalFrameAdapter(SwingDesigner designer, Component component) {        super(designer, component);        frame = (JInternalFrame) component;        contentPane = frame.getContentPane();        painter = new InternalFramePainter(designer, frame);    }    public JPopupMenu getContextPopupMenu(MouseEvent e) {        if (popupMenu == null) {            popupMenu = super.getContextPopupMenu(e);            int count = popupMenu.getComponentCount();            if (count > 0) {                popupMenu.add(new JSeparator());            }            JMenu setLayout = createLayoutMenu(contentPane);            popupMenu.add(setLayout);        }        return popupMenu;    }    @Override    public Object getBeanValue() {        return frame.getTitle();    }    @Override    public DesignerEditor getDesignerEditor(int x, int y) {        Point p = SwingUtilities.convertPoint(frame, x, y, contentPane);        Rectangle rect = contentPane.getBounds();        rect.x = 0;        rect.y = 0;        if (rect.contains(p)) {            return null;        } else {            if (designerEditor == null) {                designerEditor = new TextEditor();            }            return designerEditor;        }    }    @Override    public Rectangle getEditorBounds(int x, int y) {        Rectangle frect = frame.getBounds();        Rectangle crect = contentPane.getBounds();        frect.x = 4;        frect.y = 4;        frect.width -= 8;        frect.height = frect.height - crect.height - 12;        return frect;    }    @Override    public void setBeanValue(Object value) {        frame.setTitle((String) value);    }    public void addNextComponent(Component dragged) {    }    @Override    public HoverPainter getPainter() {        return painter;    }    public void addBefore(Component target, Component added) {    }    public void addAfter(Component target, Component added) {    }    public boolean canAcceptMoreComponent() {        return true;    }    @Override    public int getChildCount() {        return contentPane.getComponentCount();    }    @Override    public Component getChild(int index) {        return contentPane.getComponent(index);    }    @Override    public void removeComponent(Component bean) {        contentPane.remove(bean);    }    @Override    public boolean acceptComponent(int x, int y) {        Point p = new Point(x, y);        Rectangle contentRect = Util.getRelativeBounds(contentPane);        contentRect.x += designer.getOuterLeft();        contentRect.y += designer.getOuterTop();        if (!contentRect.contains(p)) {            return false;        } else {            ComponentAdapter adapter = AdapterBus.getComponentAdapter(designer, contentPane);            if (adapter instanceof ContainerAdapter) {                return ((ContainerAdapter) adapter).acceptComponent(x, y);            } else {                return false;            }        }    }    @Override    public int getIndexOfChild(Component child) {        int count = contentPane.getComponentCount();        for (int i = 0; i < count; i++) {            Component component = contentPane.getComponent(i);            if (component == child) {                return i;            }        }        return -1;    }    public boolean canAddBefore(Component hovering) {        return true;    }    public boolean canAddAfter(Component hovering) {        return true;    }    @Override    public String getAddComponentCode(Component bean) {        ContainerAdapter adapter=(ContainerAdapter)AdapterBus.getComponentAdapter(designer, contentPane);        String code=adapter.getAddComponentCode(bean);        return code;    }}

⌨️ 快捷键说明

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