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

📄 custompopupmenuui.java

📁 oraily的Swing hacks code
💻 JAVA
字号:
import java.awt.*;import java.awt.image.*;import javax.swing.*;import javax.swing.plaf.*;import javax.swing.plaf.metal.*;import javax.swing.border.*;import javax.swing.plaf.basic.*;public class CustomPopupMenuUI extends BasicPopupMenuUI {    public static ComponentUI createUI(JComponent c) {        return new CustomPopupMenuUI();    }        public Popup getPopup(JPopupMenu popup, int x, int y) {        Popup pp = super.getPopup(popup,x,y);        JPanel panel = (JPanel)popup.getParent();        panel.setBorder(new ShadowBorder(3,3));        panel.setOpaque(false);        return pp;    }}class ShadowBorder extends AbstractBorder {    int xoff, yoff;    Insets insets;    public ShadowBorder(int x, int y) {        this.xoff = x;        this.yoff = y;        insets = new Insets(0,0,xoff,yoff);    }        public Insets getBorderInsets( Component c ) {        return insets;    }        public void paintBorder(Component comp, Graphics g, int x, int y, int width, int height) {        g.setColor(Color.black);        g.translate(x,y);        g.fillRect(width-xoff, yoff, xoff, height-yoff);        g.fillRect(xoff, height-yoff, width-xoff, yoff);        g.translate(-x,-y);    }}

⌨️ 快捷键说明

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