现在的位置: 首页 > 综合 > 正文

Java Graphics_8

2013年01月11日 ⁄ 综合 ⁄ 共 1073字 ⁄ 字号 评论关闭

package com.han;

import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.Image;
import java.awt.Toolkit;
import java.net.URL;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;

/**
 * 相比上一个例子(Graphics_7)而言:拖动窗口调整大小时,没有白光闪烁
 * @author HAN
 *
 */
@SuppressWarnings("serial")
public class Graphics_8 extends JFrame {
	static CanvasPanel myPanel;
	public Graphics_8() {
		// TODO Auto-generated constructor stub
		myPanel = new CanvasPanel();
		getContentPane().add(myPanel);
		JButton button = new JButton("HAN Gaowen");
		myPanel.add(button);
	}
	
	class CanvasPanel extends JPanel {
		
		public void paint(Graphics g) {
			super.paint(g);
			Graphics2D g2 = (Graphics2D) g;
			URL imgURL = this.getClass().getResource("/images/Lighthouse.jpg");
			Image image = Toolkit.getDefaultToolkit().getImage(imgURL);
			g2.drawImage(image, 0, 0, this.getWidth(), this.getHeight(), this);
			
		}
	}

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Graphics_8 frame = new Graphics_8();
		frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		frame.setTitle("绘制图片");
		frame.setSize(440, 300);
		frame.setVisible(true);
		System.out.println(myPanel.getSize());
	}

}
【上篇】
【下篇】

抱歉!评论已关闭.