繼續牛刀(JTextField水印);

           

          玩Swing 沒點美感怎么行..嘿嘿 ^v^
          怎么能沉迷與JTextField那種白色的背景呢???太單調的..看不出像我這么有美感的人..怎能讓它顯示出我認為不好看的東西!!下面就來解決JTextFiled!! 為他添加水印!
          代碼很簡單:

          效果圖:


          文本也可以帥起來~~~~~~~

          import java.awt.Color;
          import java.awt.Graphics;
          import java.awt.Graphics2D;
          import java.awt.GridLayout;
          import java.awt.Rectangle;
          import java.awt.TexturePaint;
          import java.awt.image.BufferedImage;
          import java.io.File;
          import java.io.IOException;
          import javax.imageio.ImageIO;
          import javax.swing.JButton;
          import javax.swing.JFrame;
          import javax.swing.JTextField;

          public class WatermarkTextField extends JTextField {
            BufferedImage img;
            TexturePaint texture;
            
          public WatermarkTextField(File file) throws IOException //臨時就把異常往外拋了.
             super();                                                 //方法接收一個Image圖片文件.
             img = ImageIO.read(file);
             Rectangle rect 
          = new Rectangle(0,0,
          img.getWidth(
          null),img.getHeight(null));
             texture 
          = new TexturePaint(img, rect);
             setOpaque(
          false);
            }

            
          public void paintComponent(Graphics g) {
             Graphics2D g2 
          = (Graphics2D)g;
             g2.setPaint(texture);
             g.fillRect(
          0,0,getWidth(),getHeight());
             
          super.paintComponent(g);
            }

          //Main類我就不說了Java的基礎.
            public static void main(String[] args) throws Exception {
             JFrame frame 
          = new JFrame("Watermark JTextField Hack");
             frame.setLayout(
          new GridLayout(1,2));
             JTextField textfield 
          = new WatermarkTextField(new File("Image/水印.JPG"));
             textfield.setForeground(Color.white);
             textfield.setText(
          "A Text Field");
             textfield.setSize(
          120,30);
             frame.getContentPane().add(textfield);
             frame.getContentPane().add(
          new JButton("前面那家伙真漂亮"));
             frame.setSize(
          250,60);
             frame.setVisible(
          true);
            }

          }

          posted on 2008-05-19 16:49 相信 閱讀(703) 評論(0)  編輯  收藏 所屬分類: Swing文章

          <2025年6月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          公告

          不顯示applet

          常用鏈接

          留言簿(16)

          我參與的團隊

          隨筆檔案

          文章分類

          文章檔案

          新聞檔案

          相冊

          swingchina 專業搞Swing的網站

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 福清市| 百色市| 孙吴县| 白城市| 淮北市| 南雄市| 夏邑县| 建湖县| 延安市| 呈贡县| 和林格尔县| 巴马| 南澳县| 大英县| 台北县| 丰县| 安宁市| 新田县| 陆良县| 三亚市| 唐山市| 孝义市| 神池县| 财经| 临潭县| 肃北| 汪清县| 新乐市| 慈利县| 东安县| 松桃| 雅江县| 长泰县| 山阳县| 克山县| 平昌县| 即墨市| 韩城市| 长泰县| 封开县| 彭山县|