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

📄 fillpaintframe.java

📁 Java灵感编程1-101之61-80
💻 JAVA
字号:
package fillpaint;import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.awt.geom.*;import java.awt.image.*;import java.util.*;/** * <p>Title:  fill Paint Demo</p> * <p>Description: This is a fillPaint Demo</p> * <p>Copyright: Copyright (c) 2002</p> * <p>Company: D6-125</p> * @author liujun * @version 1.0 */public class fillPaintFrame extends JFrame {  JPanel contentPane;  BorderLayout borderLayout1 = new BorderLayout();  //Construct the frame  public fillPaintFrame() {    enableEvents(AWTEvent.WINDOW_EVENT_MASK);    try {      jbInit();    }    catch(Exception e) {      e.printStackTrace();    }  }  //Component initialization  private void jbInit() throws Exception  {    //setIconImage(Toolkit.getDefaultToolkit().createImage(fillPaintFrame.class.getResource("[Your Icon]")));    contentPane = (JPanel) this.getContentPane();    contentPane.setLayout(borderLayout1);    this.setSize(new Dimension(400, 300));    this.setTitle("fillPaint Frame Demo");  }  //Overridden so we can exit when window is closed  protected void processWindowEvent(WindowEvent e) {    super.processWindowEvent(e);    if (e.getID() == WindowEvent.WINDOW_CLOSING) {      System.exit(0);    }  }  public void paint(Graphics g) {    /**@todo: Override this java.awt.Container method*/    super.paint( g);    Paint paint;//声明Paint类    BufferedImage bufferedImage;//声明图像缓冲区    Ellipse2D circle;//声明椭圆类    Graphics2D g2 = (Graphics2D)g;//使用Java 2D   //使用单色填充   paint = Color.red; // Color implements Paint   g2.setPaint(paint);//设置填充类型   circle = new Ellipse2D.Double(10, 60, 140, 140);//构造一个圆   g2.fill(circle);//填充圆    //画出标题   g2.drawString("使用单色填充",40,230);   g2.drawString("使用双色过渡填充",200,230);   g2.drawString("使用图像填充",390,230);   //使用双色过渡填充   paint = new GradientPaint(180, 60, Color.red, 280, 160, Color.yellow);//构造GradientPaint类   g2.setPaint(paint);//设置填充类型   circle = new Ellipse2D.Double(180, 60, 140, 140);//构造一个圆   g2.fill(circle);   //使用图像填充    Image image = Toolkit.getDefaultToolkit().getImage//构造Image类,得到图像       ("E:\\jb6exam\\fillPaint\\fillPaint\\src\\fillpaint\\JBXMedium.gif");    MediaTracker tracker = new MediaTracker(this);    tracker.addImage(image, 0);//读取图像,并跟踪读过程    try { tracker.waitForID(0); }      catch (InterruptedException e) {}    bufferedImage = new BufferedImage(image.getWidth(null),//构造图像缓冲区         image.getHeight(null), BufferedImage.TYPE_INT_ARGB);    Graphics2D bufg = bufferedImage.createGraphics();//取得图像环境拖入到缓冲区    bufg.drawImage(image, 0, 0, null);//读取图像到缓冲区    Rectangle2D anchor = new Rectangle2D.Double(0, 0,//设置anchor矩形来表示图像填充的大小         bufferedImage.getWidth()/3,         bufferedImage.getHeight()/3);   paint = new TexturePaint(bufferedImage, anchor);//构造TexturePaint类   g2.setPaint(paint);//设置填充类型   circle = new Ellipse2D.Double(350, 60, 140, 140);//构造一个圆   g2.fill(circle);//填充圆  }}

⌨️ 快捷键说明

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