51Testing软件测试论坛

标题: JAVA GUI 开发---水晶图片按钮 [打印本页]

作者: 测试积点老人    时间: 2018-12-29 16:56
标题: JAVA GUI 开发---水晶图片按钮

JAVA GUI开发中,一个小小的简单的图片按钮,原来如此简单。

说明:


源代码如下:

  1. import java.awt.Dimension;
  2. import java.awt.FlowLayout;
  3. import java.awt.Graphics;

  4. import javax.swing.ImageIcon;
  5. import javax.swing.JButton;
  6. import javax.swing.JFrame;
  7. import javax.swing.JPanel;

  8. /**
  9. *
  10. * @author XXX
  11. *
  12. */
  13. public class MainJFrame {
  14.         private JButton jbutton;
  15.         private JFrame jframe;
  16.         private JPanel jpanel;
  17.        
  18.         public MainJFrame(){
  19.                 jframe = new JFrame();
  20.                 jbutton = new JButton(){
  21.                         private static final long serialVersionUID = 32323L;
  22.                         @Override
  23.                         protected void paintComponent(Graphics g) {
  24.                                 super.paintComponent(g);
  25.                                 ImageIcon img = new ImageIcon(MainJFrame.class.getResource("\\img\\8_3.jpg"));
  26.                                 img.paintIcon(this, g, 0, 0);
  27.                         }
  28.                 };
  29.                
  30.                 jpanel = new JPanel();
  31.                 init();
  32.         }
  33.        
  34.         private void init(){
  35.                 jframe.setTitle("图片按钮测试");
  36.                 jframe.add(jpanel);
  37.                 jpanel.setLayout(new FlowLayout());
  38.                 jbutton.setOpaque(true);
  39.                 jbutton.setBorderPainted(true);
  40.                 jbutton.setPreferredSize(new Dimension(154, 154));
  41.                 jpanel.add(jbutton);
  42.         }
  43.        
  44.         public void showMe(){
  45.                 jframe.setSize(300, 200);
  46.                 jframe.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  47.                 jframe.setVisible(true);
  48.         }
  49.        
  50.         public static void main(String[] args) {
  51.                 new MainJFrame().showMe();
  52.         }
  53. }
复制代码







欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2