对失效组件添加模糊效果,失效组件模糊,public class
分享于 点击 19498 次 点评:47
对失效组件添加模糊效果,失效组件模糊,public class
public class BlurJButton extends JButton { public BlurJButton(String text) { super(text); } public void paintComponent(Graphics g) { if(isEnabled()) { super.paintComponent(g); return; } BufferedImage buf = new BufferedImage(getWidth(),getHeight(), BufferedImage.TYPE_INT_RGB); super.paintComponent(buf.getGraphics()); // Blur the buffered image (see next section) } } float[] my_kernel = { 0.10f, 0.10f, 0.10f, 0.10f, 0.20f, 0.10f, 0.10f, 0.10f, 0.10f }; ConvolveOp op = new ConvolveOp(new Kernel(3,3, my_kernel)); Image img = op.filter(buf,null); g.drawImage(img,0,0,null);} public static void main(String[] args) { JFrame frame = new JFrame("Blurred Button Hack"); final JButton button = new BlurJButton("A Blurred Button"); JButton control = new JButton("Switch"); control.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent evt) { button.setEnabled(!button.isEnabled()); } }); frame.getContentPane().add(button); frame.getContentPane().add("South",control); frame.pack(); frame.show(); }//该片段来自于http://byrx.net
用户点评