窗体绘图 TextureBrush的用法,请教高手。。。
构造函数
//
// TODO: 在 InitializeComponent 调用后添加任何构造函数代码
//
// WindowState = FormWindowState.Maximized;
SetStyle(ControlStyles.Opaque, true);
SetStyle(ControlStyles.ResizeRedraw, true);
Paint += new PaintEventHandler(FrmMain_Paint);
try{
img = new Bitmap("../../girl.jpg");
smallImg = new Bitmap(img,
new Size(img.Width / 10, img.Height / 10));
}catch(Exception ex){
MessageBox.Show(ex.Message);
}
重绘事件
private void FrmMain_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;
Brush tb = new TextureBrush(smallImg,
new Rectangle(0, 0, smallImg.Width, smallImg.Height));
g.FillRectangle(Brushes.White, ClientRectangle);
g.FillEllipse(tb, ClientRectangle);
tb.Dispose();
}
在这里遇到了一个问题:
Brush tb = new TextureBrush(smallImg,
new Rectangle(0, 0, smallImg.Width, smallImg.Height));
Rectangle的前两个参数必须是0,如果不是0就会出错,这是为什么呀?哪位高人给解释一下,越详细越好,谢谢!
平台:VS2003 XP --------------------编程问答-------------------- --------------------编程问答-------------------- 明明显示着:“回复次数:1”,却什么也看不见,什么意思嘛!做广告做的挺带劲的…… --------------------编程问答-------------------- 之前回复过,个人认为是你的rect应该符合smallimage的尺寸才行 --------------------编程问答-------------------- 能解释下为什么吗?谢谢!
还忘了说一点,如果参数不是0,0,抛出的异常提示:内存不足。 --------------------编程问答-------------------- 没有满意答案,还不让结贴……
这不就是逼着让人给分吗?
我不想说些过激的话,这就是全球最大的中文IT社区吗?
补充:.NET技术 , C#