首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

关于VB6.0中一段代码的批改

2013-02-15 
关于VB6.0中一段代码的修改本帖最后由 bcrun 于 2013-01-20 19:21:41 编辑Sub PaintColor(objName As Obje

关于VB6.0中一段代码的修改
本帖最后由 bcrun 于 2013-01-20 19:21:41 编辑

Sub PaintColor(objName As Object, sigRedUp As Single, sigGreenUp As Single, sigBlueUp As Single, _
               sigRedDn As Single, sigGreenDn As Single, sigBlueDn As Single)
'垂直渐变
On Error Resume Next
Dim objHeight As Single
Dim RedInfo As Single, GreenInfo As Single, BlueInfo As Single
Dim Red As Single, Green As Single, Blue As Single
objHeight = objName.ScaleHeight
RedInfo = (sigRedDn - sigRedUp) / objHeight
GreenInfo = (sigGreenDn - sigGreenUp) / objHeight
BlueInfo = (sigBlueDn - sigBlueUp) / objHeight
For i = 0 To objHeight - 1
    Red = sigRedUp + i * RedInfo
    Green = sigGreenUp + i * GreenInfo
    Blue = sigBlueUp + i * BlueInfo
    objName.ForeColor = RGB(Red, Green, Blue)
    objName.Line (0, i)-(objName.ScaleWidth - 1, i)
Next i
End Sub




代码如上,如何把它改成水平渐变
[解决办法]
本帖最后由 bcrun 于 2013-01-28 11:36:59 编辑 Sub PaintColor(objName As Object, sigRedUp As Single, sigGreenUp As Single, sigBlueUp As Single, _
 sigRedDn As Single, sigGreenDn As Single, sigBlueDn As Single)
'垂直渐变
On Error Resume Next
Dim objHeight As Single
dim objW as single
Dim RedInfo As Single, GreenInfo As Single, BlueInfo As Single
Dim Red As Single, Green As Single, Blue As Single
'objHeight = objName.ScaleHeight
objW = objName.Scalewidth
RedInfo = (sigRedDn - sigRedUp) / objHeight
GreenInfo = (sigGreenDn - sigGreenUp) / objHeight
BlueInfo = (sigBlueDn - sigBlueUp) / objHeight
For i = 0 To objW - 1
    Red = sigRedUp + i * RedInfo
    Green = sigGreenUp + i * GreenInfo
    Blue = sigBlueUp + i * BlueInfo
    objName.ForeColor = RGB(Red, Green, Blue)
'   objName.Line (0, i)-(objName.ScaleWidth - 1, i) 
   objName.Line (i, 0)-(i,objName.Scaleheigjt - 1)     
Next i
End Sub 


热点排行
Bad Request.