SWT 背景图片自动缩放

其实说这个真的没什么必要,只是为了记下来罢了。
主要用GC的drawImage的第二个方法实现
public class Im extends Composite {

	public Im(Composite parent, int style) {
		super(parent, style);
		setLayout(new GridLayout(1, true));
		final Image img = new Image(Display.getDefault(), "fileName");
		this.addPaintListener(new PaintListener() {
			
			@Override
			public void paintControl(PaintEvent e) {
				Point size  = Im.this.getSize();
				Point p  = Im.this.getLocation();
				e.gc.drawImage(img, 0, 0, 1024, 768, p.x, p.y, size.x, size.y);
			}
		});
	}
}

你可能感兴趣的:(SWT)