erasevb.net的简单介绍

vb.net编写的贪吃蛇游戏,带代码的

需用VB实现,代码如下

创新互联是一家集网站建设,南乐企业网站建设,南乐品牌网站建设,网站定制,南乐网站建设报价,网络营销,网络优化,南乐网站推广为一体的创新建站企业,帮助传统企业提升企业形象加强企业竞争力。可充分满足这一群体相比中小企业更为丰富、高端、多元的互联网需求。同时我们时刻保持专业、时尚、前沿,时刻以成就客户成长自我,坚持不断学习、思考、沉淀、净化自己,让我们为更多的企业打造出实用型网站。

'定义蛇的运动速度枚举值

Private Enum tpsSpeed

QUICKLY = 0

SLOWLY = 1

End Enum

'定义蛇的运动方向枚举值

Private Enum tpsDirection

D_UP = 38

D_DOWN = 40

D_LEFT = 37

D_RIGHT = 39

End Enum

'定义运动区域4个禁区的枚举值

Private Enum tpsForbiddenZone

FZ_TOP = 30

FZ_BOTTOM = 5330

FZ_LEFT = 30

FZ_RIGHT = 5730

End Enum

'定义蛇头及身体初始化数枚举值

Private Enum tpsSnake

SNAKEONE = 1

SNAKETWO = 2

SNAKETHREE = 3

SNAKEFOUR = 4

End Enum

'定义蛇宽度的常量

Private Const SNAKEWIDTH As Integer = 100

'该过程用于显示游戏信息

Private Sub Form_Load()

Me.Show

Me.lblTitle = "BS贪食蛇 — (版本 " App.Major "." App.Minor "." App.Revision ")"

Me.Caption = Me.lblTitle.Caption

frmSplash.Show 1

End Sub

'该过程用于使窗体恢复原始大小

Private Sub Form_Resize()

If Me.WindowState 1 Then

Me.Caption = ""

Me.Height = 6405 '窗体高度为 6405 缇

Me.Width = 8535 '窗体宽度为 8535 缇

Me.Left = (Screen.Width - Width) \ 2

Me.Top = (Screen.Height - Height) \ 2

End If

End Sub

'该过程用于重新开始开始游戏

Private Sub cmdGameStart_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Beep

msg = MsgBox("您确认要重新开始游戏吗?", 4 + 32, "BS贪食蛇")

If msg = 6 Then Call m_subGameInitialize

End Sub

'该过程用于暂停/运行游戏

Private Sub chkPause_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

If Me.chkPause.Caption = "暂停游戏(P)" Then

Me.tmrSnakeMove.Enabled = False

Me.tmrGameTime.Enabled = False

Me.picMoveArea.Enabled = False

Me.lblPauseLab.Visible = True

Me.chkPause.Caption = "继续游戏(R)"

Else

Me.tmrSnakeMove.Enabled = True

Me.tmrGameTime.Enabled = True

Me.picMoveArea.Enabled = True

Me.lblPauseLab.Visible = False

Me.chkPause.Caption = "暂停游戏(P)"

End If

End Sub

'该过程用于显示游戏规则

Private Sub cmdGameRules_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Beep

MsgBox " BS贪食蛇:一个规则最简单的趣味游戏,您将用键盘" Chr(13) _

"上的4个方向键来控制蛇的运动方向。在运动过程中蛇" Chr(13) _

"不能后退,蛇的头部也不能接触到运动区域的边线以外" Chr(13) _

"和蛇自己的身体,否则就游戏失败。在吃掉随机出现的" Chr(13) _

"果子后,蛇的身体会变长,越长难度越大。祝您好运!!", 0 + 64, "游戏规则"

End Sub

'该过程用于显示游戏开发信息

Private Sub cmdAbout_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Beep

MsgBox "BS贪食蛇" "(V-" App.Major "." App.Minor "版本)" Chr(13) Chr(13) _

"" Chr(13) Chr(13) _

"由PigheadPrince设计制作" Chr(13) _

"CopyRight(C)2002,BestSoft.TCG", 0, "关于本游戏"

End Sub

'该过程用于退出游戏

Private Sub cmdExit_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

Beep

msg = MsgBox("您要退出本游戏吗?", 4 + 32, "BS贪食蛇")

Select Case msg

Case 6

End

Case 7

Me.chkWindowButton(2).Value = 0

Exit Sub

End Select

End Sub

'该过程用于拖动窗体_(点击图标)

Private Sub imgWindowTop_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)

ReleaseCapture

SendMessage Me.hwnd, WM_SYSCOMMAND, SC_MOVE, 0

End Sub

'该共用过程用于处理窗体控制按钮组的相关操作_(锁定、最小化、退出)

Private Sub chkWindowButton_MouseUp(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single)

If Button 1 Then Exit Sub

Select Case Index

Case 0 '锁定窗体

If Me.chkWindowButton(0).Value = 1 Then

Me.imgWindowTop.BorderStyle = 0

Me.imgWindowTop.Enabled = False

Else

Me.imgWindowTop.BorderStyle = 1

Me.imgWindowTop.Enabled = True

End If

Case 1 '最小化

Me.WindowState = 1

Me.chkWindowButton(1).Value = 0

Me.Caption = "BS贪食蛇 — (V-" App.Major "." App.Minor "版本)"

Case 2 '退出

Beep

msg = MsgBox("您要退出本游戏吗?", 4 + 32, "BS贪食蛇")

Select Case msg

Case 6

End

Case 7

Me.chkWindowButton(2).Value = 0

Exit Sub

End Select

End Select

End Sub

'该过程用于设置蛇运动速度的快慢

Private Sub hsbGameSpeed_Change()

Me.tmrSnakeMove.Interval = Me.hsbGameSpeed.Value

End Sub

'该过程用于通过键盘的方向键改变蛇的运动方向

Private Sub picMoveArea_KeyDown(KeyCode As Integer, Shift As Integer)

Select Case g_intDirection

Case D_UP

If KeyCode = D_DOWN Then Exit Sub

Case D_DOWN

If KeyCode = D_UP Then Exit Sub

Case D_LEFT

If KeyCode = D_RIGHT Then Exit Sub

Case D_RIGHT

If KeyCode = D_LEFT Then Exit Sub

End Select

g_intDirection = KeyCode

End Sub

'该计时循环过程用于计算游戏耗费的秒数并显示

Private Sub tmrGameTime_Timer()

g_lngGameTime = g_lngGameTime + 1

Me.lblGameTime.Caption = g_lngGameTime "秒"

End Sub

'该计时循环过程用于控制蛇的行动轨迹

Private Sub tmrSnakeMove_Timer()

Dim lngSnakeX As Long, lngSnakeY As Long, lngSnakeColor As Long

Dim lngPointX As Long, lngPointY As Long, lngPointColor As Long

Randomize

Me.picMoveArea.SetFocus

Me.picMoveArea.Cls

'确认蛇头的运动方向并获取新的位置

Select Case g_intDirection

Case D_UP '向上运动

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_CurY - SNAKEWIDTH

Case D_DOWN '向下运动

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_CurY + SNAKEWIDTH

Case D_LEFT '向左运动

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_CurX - SNAKEWIDTH

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY

Case D_RIGHT '向右运动

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_OldX

g_udtSnake(SNAKEONE).Snake_CurX = g_udtSnake(SNAKEONE).Snake_CurX + SNAKEWIDTH

g_udtSnake(SNAKEONE).Snake_CurY = g_udtSnake(SNAKEONE).Snake_OldY

End Select

'根据新的位置绘制蛇头

lngSnakeX = g_udtSnake(SNAKEONE).Snake_CurX

lngSnakeY = g_udtSnake(SNAKEONE).Snake_CurY

lngSnakeColor = g_udtSnake(SNAKEONE).Snake_Color

Me.picMoveArea.PSet (lngSnakeX, lngSnakeY), lngSnakeColor

'移动蛇身体其他部分的位置

For i = 2 To g_intSnakeLength

g_udtSnake(i).Snake_CurX = g_udtSnake(i - 1).Snake_OldX

g_udtSnake(i).Snake_CurY = g_udtSnake(i - 1).Snake_OldY

lngSnakeX = g_udtSnake(i).Snake_CurX

lngSnakeY = g_udtSnake(i).Snake_CurY

lngSnakeColor = g_udtSnake(i).Snake_Color

Me.picMoveArea.PSet (lngSnakeX, lngSnakeY), lngSnakeColor

Next i

'更新蛇旧的坐标位置

For j = 1 To g_intSnakeLength

g_udtSnake(j).Snake_OldX = g_udtSnake(j).Snake_CurX

g_udtSnake(j).Snake_OldY = g_udtSnake(j).Snake_CurY

Next j

'判断蛇在移动中是否到了禁区而导致游戏失败

If m_funMoveForbiddenZone(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then

Beep

MsgBox "您的蛇移动到了禁区,游戏失败!", 0 + 16, "BS贪食蛇"

Me.tmrSnakeMove.Enabled = False

Me.tmrGameTime.Enabled = False

Me.picMoveArea.Visible = False

Exit Sub

End If

'判断蛇在移动中是否碰到了自己的身体而导致游戏失败

If m_funTouchSnakeBody(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then

Beep

MsgBox "您的蛇在移动中碰到了自己的身体,游戏失败!", 0 + 16, "BS贪食蛇"

Me.tmrSnakeMove.Enabled = False

Me.tmrGameTime.Enabled = False

Me.picMoveArea.Visible = False

Exit Sub

End If

'判断蛇是否吃到了果子

If m_funEatPoint(g_udtSnake(SNAKEONE).Snake_CurX, g_udtSnake(SNAKEONE).Snake_CurY) Then

'累加玩家的得分并刷新得分显示

g_intPlayerScore = g_intPlayerScore + 1

Me.lblYourScore.Caption = g_intPlayerScore "分"

Call m_subAddSnake '加长蛇的身体

Call m_subGetPoint '获取下一个果子的位置和颜色

Else

'绘制果子

lngPointX = g_udtPoint.Point_X

lngPointY = g_udtPoint.Point_Y

lngPointColor = g_udtPoint.Point_Color

Me.picMoveArea.PSet (lngPointX, lngPointY), lngPointColor

End If

End Sub

'该私有子过程用于初始化游戏

Private Sub m_subGameInitialize()

Erase g_udtSnake '清空蛇的结构数组

g_intPlayerScore = 0 '清空玩家的得分

g_lngGameTime = 0 '清空游戏耗费的秒数

g_intDirection = D_DOWN '设定蛇的初始运动方向为下

g_intSnakeLength = 4 '设定蛇的初始长度

ReDim g_udtSnake(1 To g_intSnakeLength) '重新定义蛇的长度

'定义蛇头部的数据

With g_udtSnake(SNAKEONE)

.Snake_OldX = 530

.Snake_OldY = 530

.Snake_Color = vbBlack

End With

'定义蛇身第2节的数据

With g_udtSnake(SNAKETWO)

.Snake_OldX = 530

.Snake_OldY = 430

.Snake_Color = vbGreen

End With

'定义蛇身第3节的数据

With g_udtSnake(SNAKETHREE)

.Snake_OldX = 530

.Snake_OldY = 330

.Snake_Color = vbYellow

End With

'定义蛇身第4节的数据

With g_udtSnake(SNAKEFOUR)

.Snake_OldX = 530

.Snake_OldY = 230

.Snake_Color = vbRed

End With

Me.picMoveArea.Visible = True

Me.lblYourScore.Caption = g_intPlayerScore "分"

Me.lblGameTime.Caption = g_lngGameTime "秒"

Me.tmrSnakeMove.Interval = Me.hsbGameSpeed.Value

Me.tmrSnakeMove.Enabled = True

Me.tmrGameTime.Enabled = True

Call m_subGetPoint '获取第一个果子的位置和颜色

End Sub

求文档: site:baiduwenku ps基础知识

[PS基础知识] Phptoshop CS的界面组成

Phptoshop CS的界面主要由标题栏、菜单栏、属性栏、工具箱、控制面板、图像窗口、状态栏这7部分组成。

其中各项的作用如下:

◆标题栏:标题栏位于界面的顶部用来显示程序的名称。

◆菜单栏:菜单栏位于标题栏的下方,它涵盖了Phptoshop中所有的菜单命令,包括文件、编辑、图像、图层、选择、滤镜、视图、窗口、帮助9个选项。

◆属性栏:当用户在工具箱中选择一种工具,会在属性栏中出现相应的选项,为选项设置不同的参数,可以得到不同的结果。

◆工具箱:在工具箱中提供了用于创建和编辑图像的各种工具,如选择工具、绘图工具、文字工具等。

◆控制面板:在窗口界面的右侧,浮动着Phptoshop的控制面板,共包含15个,其中常用的是图层、通道、路径和画笔控制面板。所有的控制面板都可以在“窗口”菜单中打开。

◆图像窗口:用来对图像进行编辑和各种操作的窗口。

◆状态栏:状态栏位于窗口的底部,主要用于显示图像处理的各种信息。

一、“矩形选框”工具:用鼠标单击“矩形选框”工具右下方,可以出现下拉菜单。其中还包含“椭圆选框”工具、“单行选框”工具、“单列选框”工具。如图:利用这些工具可制作比较规则的选区。当用户选择了“矩形选框”工具后,在属性栏会出现相应的选项。如图

其中各项的作用如下:

◆新选区按纽:单击此按纽,新的选区将代替原有选区。

◆添加选区按纽:单击此按纽,会在原有选区的基础上添加选区。

◆从选区减去按纽:单击此按纽,会在原有选区上减去新创建的选区。

◆与选区交*按纽:单击此按纽,建立的选区与原有选区相交的部分将作为新的选区。

◆羽化:设置羽化值可以使选区形成边缘模糊的特殊效果。如图

二、“移动”工具

利用“移动”工具,可以将图层中的一副图像或选区移动到指定的位置,也可以将同一窗口的一个图像文件中的图像或选区移动到另一个图像文件中。

三、“套索”工具

套索工具包含“套索”工具、“多边形套索”工具、“磁性套索”工具。利用套索工具可以制作一些不规则的选区。其中“磁性套索”工具的使用频率较高,它可以自动查找对象的边缘,快速生成选区。

四、“魔棒”工具

利用“魔棒”工具可以选取图像中颜色相似的区域,使用“魔棒”工具时,在属性栏中可以设置“容差”选项,它用来决定选取颜色的范围,“容差”值越大,颜色区域越广,默认情况下,“容差”值为32。

五、“渐变”工具使用“渐变”工具可以为图像添充层次连续变化的颜色,从而达到一种色彩的图像效果。使用“渐变”工具时,要先使用鼠标定位,确定起点,然后拖到终点,即可产生渐变效果。使用“渐变”工具的步骤如下:1、选择工具箱中的“渐变”工具,属性栏中出现相应的属性选项。如图

从中可以设置颜色值,按Alt键,单击并拖动色块上的色标按扭可以创建并编辑一个新的渐变颜色。

◆“渐变类型”:有线性渐变、径向渐变、角度渐变、对称渐变、菱形渐变。

◆“模式”:单击“模式”右侧的三角,弹出下拉菜单,可以选择当前要设置的渐变与当前图像的混合模式,包括叠加、正片叠底、颜色加深等,选择不同的模式,可以得到不同的效果。

◆不透明度:用来表示当前渐变的透明程度。2、在属性栏中设置各选项后,在图像窗口中单击鼠标确定起点后,拖动到终点,松开鼠标即可创建渐变。

六、“模糊”、“锐化”和“涂抹”工具br1、利用“模糊”工具可以将两副图像进行边缘融合、模糊。br2、使用“锐化”工具,可以使图像变的更清晰、色彩更亮,更鲜明。br3、使用“涂抹”工具,就象用手指在还未干的画纸上涂抹一下的效果

七、“文字”工具br使用“文字”工具可以在图像上输入文字。在图层控制面板上,文字会单独做为一个图层出现。br利用“文字”工具的步骤如下:br1、选择“文字”工具,在属性栏上可以设置文字的大小、颜色、字体等参数。如图

在图像窗口中单击,会出现光标,可以直接输入文字。br3、创建变形文字:选中文字,单击“创建变形文字”按纽,可以打开“变形文字”对话框,单击“样式”选择不同的选项,可以得到不同的变形文字。br4、单击属性栏中的“切换字符和段落调板”按纽,可以打开“字符和段落”对话框,从中可以设置字符的字体、间距、段落的间距、格式等参数。

八、“路径”工具

当用户要绘制比较复杂或有创意的图形时,需要用到“路径”工具。利用工具箱中的“钢笔”工具、“自由钢笔”工具。可以绘制直线或曲线,这些直线和曲线被称为“贝塞尔曲线”,曲线上有称为“锚点”的结点。通过锚点可以调整曲线的形状。贝塞尔曲线可以是开放的,也可以是闭合的。

单击工具箱中的“路径”工具,会弹出下拉菜单如图

此主题相关图片如下:

各项功能如下:

◆“自由钢笔”工具:可以用自由拖移的方法直接绘制路径。

◆“添加锚点”工具:用于在线段内部添加锚点。

◆“删除锚点”工具:用于在线段内部删除不需要的锚点。

◆“转换点”工具:用于平滑点与角度之间的转换。从而实现平滑曲线与锐角曲线或直线段之间的转换。

九、“形状”工具

用户可以在新图层中创建形状。形状由当前的前景色自动填充,也可以将填充更改为其他颜色、渐变或图案。形状的轮廓存储在路径面板的图层剪贴路径中。

当使用“形状”工具时,可以在当前的图层创建栅格化形状。创建栅格化形状后,将无法作为矢量对象进行编辑。

单击“自定义形状”工具。在其下拉菜单中如图

此主题相关图片如下:

十、“前景色与背景色转换”工具

单击工具箱中的“前景色与背景色转换”工具按纽如图

控制面板

在Photoshop中,提供了12中控制面板,它们浮动在图像窗口的上方,位于界面的右侧。

一、图层控制面板

所谓图层,通俗的说,就是将多副带有透明度的图片或纸张进行重叠,得到一个整体的效果,而每一张图片又是独立存在的,它们可以单独被编辑或修改。

图层面板各部分的意义如下如图

◆“指示图层可视性”按纽:显示此标志,表示此图层处于可显示状态。

◆“指示在图层或图层蒙版上绘画”按纽:若在某一图层前显示此标志,表示此图层处于编辑状态。

◆“链接”按纽:单击此按钮,表示此图层与当前图层处于链接状态。

◆“添加图层样式”按纽:单击此按钮,在弹出的下拉菜单中选择不同的命令,可以设置不同的图层样式。

◆“新建”按纽:单击此按钮,表示创建新的图层。

◆“删除”按纽:单击此按钮,表示删除当前图层。

◆“创建新的填充或调整图层”按纽:单击此按钮,在弹出的下拉菜单中选择不同的命令,可以为图层创建新的填充层或调节层。

◆“创建新组”按纽:单击此按钮,可以创建一个新组,在一个组中可以包含有多个图层,在组中可以同时对多个图层进行操作。

◆“添加图层蒙版”按纽:单击此按钮,可以创建图层蒙版。

◆“锁定”按纽:单击此按钮,表示当前图层被锁定。图层被锁定后,用户不能对其进行移动等设置。

二、通道控制面板

对于刚刚接触Photoshop的人来说,通道是一个较难理解的概念。其实,通道的功能主要包含两个,即管理颜色和制作选区。在通道控制面板中,列出了图像的所有通道如图

包括复合通道、单色通道、专色通道和Alpha通道、通道内容的缩略图显示在通道名称的左侧。在通道控制面板,用户也可以创建、删除或将选区存储为通道。

三、路径控制面板

在路径控制面板中,用户可以显示存储的路径,当前路径和当前图层剪贴路径的名称和缩览图像。路径控制面如图

文件的基本操作

一、新建文件

选择“文件”“新建”命令(Ctrl+N快捷键),打开“新建”对话框如图

在对话框中,在名称的右侧的文本框可以输入要创建文件的名称,在宽度、高度、分辨率、模式后的文本框可以设置宽度、高度、分辨率、模式。

二、打开文件

选择“文件”“打开”命令,弹出“打开”对话框如图

在查找范围中可以选择要打开文件的路径,设置好路径后,选择文件类型中要打开文件的类型,单击打开,就可以打开文件。

三、存储文件

选择“文件”“存储”命令(Ctrl+S快捷键),打开“存储为”对话框如图

此主题相关图片如下:

在保存在的右侧选择保存文件的路径。在格式的下拉菜单中选择存储文件的格式,在文件名中输入名称,即可保存。默认情况下,Photoshop使用的格式为PSD,用户也可以使用TIFF或JPG格式文件保存。

件格式和图像的色彩模式

一、文件的格式

在Photoshop中,较常用的文件格式:

◆PSD:这是Photoshop默认的文件格式,可以保存图像的图层、路径、通道等。

◆TIFF:图形文件的一种记录格式,用于在各种软件和计算机之间传送图形文件格式,普遍用于多种扫描仪。

◆EPS:其文本和图形可在专用的PostScript打印机上打印,也可以供不同的计算机之间交换图形。

◆JPG:是一种主要用于静态图像的压缩和解压缩标准文件,使用此格式后,文件中的图层、路径、通道等将被合并。

◆GIF:图形文件的一种记录格式,照片或图形在服务时采用的一种节省空间的存储格式。

二、图像的色彩模式

颜色模式决定用于显示和打印图像的颜色模型。Photoshop的颜色模式包括RGB、CMYK和灰度模式。

◆RGB模式:这是Photoshop默认模式,在此模式下图像比较清晰。

◆CMYK模式:在图像打印时,都使用CMYK四色印刷。在Photoshop的CMYK模式中,为每个像素的各种印刷油墨指定一个百份比值。

◆灰度模式:该模式多达到256级灰度。灰度图像中的每个像素都有一个0-255之间的亮度值。

图像的基本操作

一、置入图像

1、当要置入的图像在另一个图像文件时,打开另一个图像文件,选中要置入的图像,利用工具箱中的“移动”工具,将图像拖动到目标文件。

2、也可以选中要置入的图像,选择“编辑”“拷贝”命令,再次选择“编辑”“粘贴”命令置入图像

二、变形图像

选择“编辑”“变换”命令下的选项如图

此主题相关图片如下:

或选择“编辑”“自由变换”选项,都可以对图像进行变换。

在变换命令的下拉菜单中,包含缩放、旋转、斜切、扭曲、透视、水平翻转、垂直翻转等多个选项。

◆斜切和扭曲:可以产生变形效果。

◆透视:选择透视命令后,在水平或垂直位置上移动一个角度时,与之在同一水平或垂直线上的角点也随之移动。如图

三、调整图像色彩和色调

选择“图像”“调整”命令下的选项如图

可以对图像进行色彩和色调的调整。

在下拉菜单中,包含了多个进行色彩和色调调整的命令,下面介绍几种常用的命令

、曲线

选择“图像”“调整”“曲线”命令,可以打开如图所示的“曲线”对话框。在“曲线”对话框的网格区中可以调整曲线,用鼠标单击曲线,会在曲线上出现一个节点,按住并拖动节点,可以调整曲线,改变图像的色彩和色调

2、色彩平衡

使用色彩平衡命令可以在彩色图像中改变颜色的混合,从而使整个图像的色彩趋于平衡。选择“图像”“调整”“色彩平衡”命令,可以打开“色彩平衡”对话框如图

在“色彩平衡”中,包含有3个滑块,每个滑块上有两个颜色,它们是3对互补色,增加其中一种颜色,就相当减少另一种颜色。

在“色彩平衡”区中,用户可以选择调整“暗调”、“中间调”、“高光”部分的色彩,若选中“保持亮度”复选框,可以维持图像的整体亮度不变

3、色相/饱和度

“色相/饱和度”主要用于改变像素的色相及饱和度值,它还可以通过给像素指定新的色相和饱和度,为灰度图像添加色彩。方法如下:

选择“图像”“调整”“色相/饱和度”命令,打开“色相/饱和度”对话框如图

此主题相关图片如下:

◆单击“编辑”右侧的按钮,在弹出的下拉菜单中选择不同的选项,表示色彩变化的范围也不同。

◆拖动对话框中的“色相”、“饱和度”、“明度”滑块,或在文本框中输入数值,可以得到不同的色相、饱和度、明度效果。

◆选中对话框右下角的“着色”复选框,可以给一副灰色或黑白图像添加色彩。如在处理一副彩色图像时选中此复选框,所有彩色颜色都将变成单一色调。

VB.NET中的BitBlt 问题

可能这是我见过的最成功VBnet的BITBLT示例。

Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

Me.PictureBox1.Image = Image.FromFile("E:\程序语言\VBpic\输入文件名.BMP")

End Sub

运行,点击你的Button2按钮(窗体Form1上加两个图片框和一个命令按钮搞成Button2)

PictureBox2就有受控的图片出来了。

VB.net中任何提取文本文件中的逗号分格数据?

用数组呗。我是用VB6的,不过你会.NET也肯定能看懂。

不是文本文件么?先用Line Input读每行存入数组。再把每行数据用你的","分割,就可以查询了。我写个简单的例子:

'搜索函数,用法Search(标头,序号),返回数据.

Private Function Search(ByVal Section As String, ByVal Index As Integer) As String

Dim fNum%, Lines%, temp%, Str As String

ReDim Data(0)

fNum = FreeFile()

If Dir("C:\1.txt") = "" Then Exit Function '文件路径和文件名你自己改

Open "C:\1.txt" For Input As #fNum

Do While Not EOF(fNum)

Lines = Lines + 1 '行数

Line Input #fNum, Str

ReDim Preserve Data(Lines)

Data(Lines) = Str

Loop

Close #fNum

If Lines 0 Then

Dim tmp() As String

For temp = 1 To UBound(Data)

tmp = Split(Data(temp), ",") '分割

If tmp(0) = Section Then

Search = tmp(Index - 1) '因为从0开始所以-1

Exit Function

End If

Next

End If

End Function

比如你要“gc“开头的第5个数据,就用Search("gc",5)即可返回45。

VB中的Erase语句

Private Sub Form_Click()

Dim a() As Integer

ReDim a(5)

a(5) = 50

Print a(5)

Erase a 这时已经删除a了,

Dim b() As Integer

ReDim b(5)

b(5) = 100

Print a(5) 这里你还用a,当然会出错

Print b(5)

End Sub


网页标题:erasevb.net的简单介绍
网站URL:http://myzitong.com/article/dsggdee.html