C# 窗体背景图片怎么跟随窗体变化而变化
答案:4 悬赏:20 手机版
解决时间 2021-03-15 17:21
- 提问者网友:戎马万世
- 2021-03-15 14:20
C# 窗体背景图片怎么跟随窗体变化而变化
最佳答案
- 五星知识达人网友:鸽屿
- 2021-03-15 15:53
背景图单独存放在其它位置后,当窗口的OnResize事件发生时,
对图片缩放后,作为背景。根据此原理,实现如下:
这里借用了一个pictureBox.不改变它的其它属性,如改变Image属性后,编写如下代码。
private void Form2_SizeChanged(object sender, System.EventArgs e)
{
loadBackImage();
}
private void loadBackImage()
{
Bitmap bit = new Bitmap(this.Width,this.Height);
Graphics g = Graphics.FromImage(bit);
g.DrawImage(this.pictureBox1.Image,new Rectangle(0,0,bit.Width,bit.Height),0,0,this.pictureBox1.Image.Width,this.pictureBox1.Image.Height,GraphicsUnit.Pixel);
this.BackgroundImage = bit;
g.Dispose();
}
private void Form2_Load(object sender, System.EventArgs e)
{
loadBackImage();
}
对图片缩放后,作为背景。根据此原理,实现如下:
这里借用了一个pictureBox.不改变它的其它属性,如改变Image属性后,编写如下代码。
private void Form2_SizeChanged(object sender, System.EventArgs e)
{
loadBackImage();
}
private void loadBackImage()
{
Bitmap bit = new Bitmap(this.Width,this.Height);
Graphics g = Graphics.FromImage(bit);
g.DrawImage(this.pictureBox1.Image,new Rectangle(0,0,bit.Width,bit.Height),0,0,this.pictureBox1.Image.Width,this.pictureBox1.Image.Height,GraphicsUnit.Pixel);
this.BackgroundImage = bit;
g.Dispose();
}
private void Form2_Load(object sender, System.EventArgs e)
{
loadBackImage();
}
全部回答
- 1楼网友:煞尾
- 2021-03-15 18:46
填充就好了
- 2楼网友:北方的南先生
- 2021-03-15 17:39
Zoom 是放大,把楼上的Zoom 改成Stretch 就OK了谢谢采纳
- 3楼网友:持酒劝斜阳
- 2021-03-15 17:29
BackgroudImageLayout为Stretch会比Zoom更好ZOOM图片的与窗体的比例一样小窗体的时候与边框距离看似很小当窗体放大时就和出现很大的边距
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯