秋声赋
简单易懂的现代魔法:C#编程教程(四) 图片与文字

本帖最后由 秋声赋 于 2012-4-18 13:15 编辑

简单易懂的现代魔法:C#编程教程(四)

图片与文字

上次介绍了控件和事件的概念,并通过使用按钮控件加深了了解.

这次我们要学会怎么在程序中显示图片和文字.

同样的,一般情况下显示图片和文字都是通过控件完成.

图片是(PictureBox控件),文字是(Label控件)


首先介绍PictureBox控件

还是新建一个WinForm工程,并在工具栏中找到PictureBox控件,把他拖到窗口上.

这时候PictureBox控件是没有图像的,同样的,我们先来看下PictureBox控件的属性.

发现这个Image属性就是指定显示哪个图像.点开后面的按钮,进入选择图片的界面.

我们选择上面的本地资源,点击导入.然后选择一个图片,点击确定.

就能发现现在PictureBox控件里面显示了我们选择的那张图片了.

但是你可能会发现,这张图片显示的并不完全,

是因为PictureBox控件默认的显示模式是平铺的,所以图片比控件大的时候就只会显示一部分.

我们来修改Picture控件的SizeMode属性Zoom(应该是对应的设置桌面时候的 适应)

然后就可以发现图片显示正常了,当然我们可以根据实际的需要来调整SizeMode.

可能你会问,一个Galgame不可能从头到尾就一张图片吧?

要怎么在不同的时候显示多张图片?

不可能放很多的PictureBox控件吧

这里你就要记住一点,所有在属性栏里面能修改的属性都是可以在程序中修改的.

让我们先看一下怎么在代码中为PictureBox控件指定显示的图片.

在我们的窗体上在拖出一个按钮(Button)控件,并为他的Click事件添加响应函数.

我们这里要用到一个新的类,Bitmap,他封装了一个位图(或者说代表了一个位图.位图是啥?可以理解为图片,详细的自己去百度吧).

Bitmap是个很方便的类,在定义的时候我们只要在构造函数里面指定图片的文件路径就可以自动读取图片了.如下所示:

Bitmap 图片1 = new Bitmap(@"D:\动漫杂项\图包(秋之回忆)\秋之回忆1-7全CG\秋之回忆雨后Vol3卒业cg\01-02:上面没有啦!.jpg");

这时候,图片1这个变量就代表了上面文件路径所指定的图片.

(这里注意文件路径前面有个@,这表示我们不需要在这个字符串里面用转义字符.什么是转义字符?

一些用\+字母表示的字符,例如\n就表示换行,\t表示制表符,因为我们这里不需要这些,但是文件路径里面又有\,所以要在前面加个@).

然后就是修改PictureBox控件(这里对应的变量是pictureBox1)Image属性,直接赋值即可.

[mw_shl_code=csharp,true] pictureBox1.Image = 图片1;[/mw_shl_code]

运行程序,单击下按钮,就会发现图片变成了我们指定的图片.

可以看出C#里面显示图片还是很简单的吧?


接下来是文字,相对于图片,显示文字就简单多了.

首先在窗体中拖入一个Label控件,

这里我们发现Label控件是不能修改大小的,要修改大小就需要修改他显示的文字的字体.

修改成自己喜欢的,然后看到下面这个Text属性,这里就是我们要显示的文字.

修改下.我们就能从窗口看到效果.

同样的,我们也能在代码中改变这些文字.

label1.Text = "真心跪求,104228916@qq.com";

运行,单击按钮后效果如下:



上面就是这次的内容.

这次学习了用PictureBox控件和Label控件显示图片和文字.

作业:
1. 当鼠标点击PictureBox控件是时候切换图片,一共要有5张,并且是循环播放的,例如第5张显示出来后,再点击就显示第一张.
2. 尝试用OpenFileDialog控件做一个简单的图片查看器.

OpenFileDialog op = new OpenFileDialog();

op.ShowDialog();

这之后, op.FileName里面就代表了用户选择的图片的路径.

xiayuweiye
xiayuweiye回复给帖子:3815902
展开Biu

@3*学习中。。。。

[查看全文]
Sonivy.Ray
为什么我看不到教程的图片的
展开Biu

求救 为什么我看不到教程的图片的 一直在转圈

[查看全文]
淡随人去
还是挺方便的吧
展开Biu

秋声赋 发表于 2012-6-16 20:43

用Linq To SQL 还是挺方便的吧

主要是我太菜。

[查看全文]
秋声赋
淡随人去
展开Biu

淡随人去 发表于 2012-6-16 20:43

我勒个去,从主页误入这里的。

这两天刚用C#做了一个简易英汉电子词典,和本身不复杂,就是和数据库链接比 ...

用Linq To SQL 还是挺方便的吧

[查看全文]
淡随人去
我勒个去
展开Biu

我勒个去,从主页误入这里的。

这两天刚用C#做了一个简易英汉电子词典,和本身不复杂,就是和数据库链接比较头疼,还好都解决了。

0.0

我从一开始再好好看看- -

[查看全文]
崬阁
语言神马已经无法阻止我了
展开Biu

@@31!!语言神马已经无法阻止我了

[查看全文]
秋声赋
风音洛洛
展开Biu

风音洛洛 发表于 2012-5-29 21:16

秋声大神的帖子一直在首页永垂不朽呐

奴家最近害羞嘛

[查看全文]
风音洛洛
秋声大神的帖子一直在首页永垂不朽呐
展开Biu

秋声大神的帖子一直在首页永垂不朽呐

[查看全文]