您的位置:首页 > 编程语言 > C#

C#学习笔记:动态设置控件的背景图片

2017-05-29 14:41 615 查看
C#窗体应用程序中设计中,有些控件是可以设置背景图片(BackgroundImage)的,比如窗体(Form)、按钮(Button)、标签(Label)等,对于图片框控件(PictureBox),它不仅有背景图片(BackgroundImage)属性,还有图片(Image)属性。不管是BackgroundImage,还是Image,用法都是相同的。这两个属性都能在属性栏中设置,这里主要讲的是在代码中动态地设置。

关于控件背景图片,有两个属性经常会用到,分别是BackgroundImage,和BackgroundImageLaout(图片布局),下面将讲述他们的用法。

1.设置控件的背景图片

假设控件名为control,图片的路径为C:\Destop\001.jpg,则可以这样设置控件的背景图片:

control.BackgroundImage=new
Bitmap(@“C:\Destop\001.jpg”);//载入图片

     或者

control.BackgroundImage=new
Bitmp(“C:\\Destop\\001.jpg”’);

     注意:图片的路径必须是全路径,否则无法加载图片;

输入图片的路径时,要注意格式。加前缀@符号,表示原样输入,如果不加@前缀,则要考虑斜杠“\”的转
义字符,即用双斜杠“\\”,才是表示“\”。

加载完图片,还要设置图片的布局,才能取得自己想要的效果,这就需要对图片的(BackgroundImageLayout)进行设置了。图片布局一共有五种选择,分别为:

None:不做任何处理,从控件左上角开始显示图片。如果图片比控件小,则控件不会被填满;如果图片比控件
   大,则控件会被填满,而图片只显示一部分。

Tile:如果图片比控件小,则图片会重复显示,直到控件被填满;如果图片比控件大,则控件被填满,图片显示
不全;

Stretch:无论图片的大小如何,都会被缩放为控件的大小,图片全部显示,控件也被填满。

Zoom:图片也会被缩放,与Stretch不同的是,缩放是等比例的。

设置图片布局:

control.BackgroundImage=ImageLayout.Stretch;//采用Stretch布局

control.BackgroundImage=ImageLayout.Center;//采用Center布局

.......

2.获取图片

    Image
 picture;//定义一个Image类型的变量

ImageLayout
 layout;//定义一个ImageLayout类型的变量

picture=control.BackgroundImage;//将背景图片赋给picture

layout=control.BackgroundImageLayout;//将背景图片布局赋给layout

3.实例

设置窗口(Form1)背景图片,图片布局为Stretch;设置图片框(PictureBox1)的图片属性(Image);将窗体的背景图片赋给按钮(Button1)。

代码部分如下图:



运行效果

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息