不论好坏的英文坏翻译坏英语怎么说-2009年高考成绩查询
2023年4月1日发(作者:中国招生代理网)
VB方法绘图
绘制点、线、面,以及设置前景、背景色
一、设置当前绘图点
在VB中,可以通过设置窗体或图形框的CurrentX与CurrentY属性来设置当前绘图点。CurrentX与
CurrentY决定了绘制或显示的起始坐标,在设计时,这两个属性不可用。
图片框等对象的绘变形计赵迪 图模式等参数设置。
对象.Scalemode=3为像素模式,ScaleWidth和ScaleWeight就是图片框的水平和垂直像素大小;
Windows系统默认使用Twip(缇,一种逻辑单位,一般15个像素,具体用erPixelX和
erPixelY系数转换一个像素多少缇)
ScaleMode的属性值
值单位意义说明
0User
用户自定义
自定义坐标系统,即ScaleLeft,ScaleTo,ScaleWidth,
ScaleHeight属性由用户自行设定
1Twip
可缺省Twip,1英寸约等于1440twip
2Point
点1英寸约72个点
3Pixel
像素
水平1像素=erPixelX
垂直1像素=erPixelY
4Character
字符1个字符宽120Twip,高240Twip
5Inch
6Millimeter
7Centimeter
厘米
对象.AutoRe聚沙成塔 draw=True/False设置对象自动重绘图,这种模式下,所绘制的图保持在图片框上,否则
被其它窗体挡住后,再显示出来就没有绘制的图;
对象.DrawMode=7设置对象绘图模式为异或模式,重复绘制两次即可复原图片原先内容,还有其它
一些模式;
DrawMode的属性值
值意义值意义
1Blankness9MaskPen
2NotMergePen10NotXorPen
3MaskNotPen11Nop
4NotCopyPen12MergeNotPen
5MaskPenNot13CopyPen
6Invert14MergePenNot
7XorPen15MergePen
8NotMaskPen16Whiteness
对象.DrawStyle=0设置对象绘制的线条是实线,也有其它的风格;
DrawStyle的属性值
值意义说明
0Solid
1Dash
2Dot
3Dash-Dot
4Dash-Dot-Dot
5Transparent
6Insidesolid
对象.DrawWidth=1设置对象绘制的线条粗细,也可以设置为其它数据,默认为1。
二、绘制点、线、面的方法
1、点的绘制法
在指定对象(如窗体、图形框)上的指定位置处绘制点,还可以为点指定颜色,语法如下:
对象名.Pset(X,Y),[Color]
X,Y分别为点的水平与垂直坐标,Color为点的颜色,是可选项。
2、直线的绘制法
在对象上绘制直线,语法如下:
对象名.Line(X1,y1)-(X2,Y2),[Color]
(X1,Y1)是直线的起点,(X2,Y2)是直线的终点,Color为可选项。
3、绘制矩形
用Line方法还可无私的反义词 以绘制矩形,语法如下:
对象名.Line(X1,Y1)-(X2,Y2),[Color],B,[F]
其中,(X1,Y1)是矩形的左上角座标,(X2,Y2)是矩形右下角座标,Color为矩绿杨阴里白沙堤全诗 形边框的颜色,使用参数
B而不用F,那么矩形用当前的填充色(FillColor)与填充方式(FillStyle)对矩形进行填充;如果使用了
参数F,那么矩形以边框的颜色进行填充。
特别注意,用Line画矩形框,如果不用其他参数,那么B与坐标(X孟母三迁翻译及注释 2,Y2)之间应该有两个逗点,一个
是紧跟坐标2,一个表示Color省略了,如:(500,500)-(1000,1000),,B
4、绘制圆、椭圆、弧
用Circle方法可以绘制圆、椭圆与弧,语法如下:
对象名.Circle(X,Y),Radius,[Color,start,end,aspect]
其中(X,Y)是圆、椭圆或弧的圆心坐标,Radius是半径,这两个参数是必须项;Color是圆的轮廓色,
Start与End是弧的起点与终点位置。其范围是-2-2Pi;Aspect是圆的纵横尺寸比,默认值是1即圆.
5、文字的输出
Print方法可在指定位置显示字符串,如下:utputtext字体的格式受的属性
等控制,需要不同格式的字体时候,需要改动的属性,颜色由or控制.
.Size=12
.Name=\"宋体\"
.Weight=56
.Bold=False
.Charset=43
.Italic=False
.Strikethrough=False
.Underline=False
EndWith
三、颜色、前景与背景色的设置:
1、颜色函数RGB
色彩设置的方法如下:RGB(Red,Green,Blue)
不要忘了,Red、Green、Blue每种色彩各有0—255种成份,三种色彩不同参数的搭配,就产生了丰
富多采的现实世界。
2、前景色的设置
通过对ForeColor(前景色属性)的设置,可以返回或设置对象的前景色。
3、背景色的设置
通过对BackColor(背景色属性)的设置,可以返回或设置对象的背景色。
4、图形的清除
用Cls方法可以清除窗体或图形框在程序运行中绘制的图形,语法如下:对象名.Cls
5、获取像素的颜色值
用Point(x,y)函数可以取得点(x,y)的颜色值,语法如下:Col=对象名.Point(x,y)
6、颜色分量计算
R=ColAnd&0xff\'获取红色
G=(ColAnd&0xff00)/256\'获取黄色
B=(Coland&0xff0000)/(256*256)\'获取蓝色
7.图像颜色处理
(1)彩色转灰度
(X,Y),RGB((R+G+B)/3,(R+G+B)/3,(R+G+B)/3)
(2)底片效果
(X,Y),RGB(255-R,255-G,255-B)
(3)木雕效果
If(R+g+b)/3>128then
(X,Y),RGB(255,255,255)
Else
(X,Y),RGB(0,0,0)
Endif
(4)其它,根据点周边点的颜色值有规律改变而可以得到特殊效果,如果中值滤波,均值滤波,高值滤波,
低值滤波,拉普拉斯滤波;根据颜色点阵,可以进行边界追踪以及区域面积等的计算.
四、事例
e控件上鼠标按下移动可以任意绘制线
一个窗体,一个按钮Exit,名称为Command3,一个Picture控件,名称为Picture1,以下代码放在窗
体代码模块内。
Rem窗体级别变量定义,定义鼠标起始两点位置Pstart和Pend
DimPstartXAsLong,PstartYAsLong,PendXAsLong,PendYAsLong,FlagAsBoolean
PrivateSubForm_Load()
lor=RGB(255,255,0)\'定义绘制的前景色
ode=3\'定义图片坐标模式,3为像素模式坐标
EndSub
PrivateSubCommand3_Click()
UnloadMe\'退出
EndSub
PrivateSubPicture1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfNotFlagAndButton=1Then
de=7\'定义绘制模式为XOR,异或操作,两次即复原
PstartX=X荷风送香气竹露滴清响 :PstartY=Y
PendX=X:PendY=Y
Flag=True
EndIf
EndSub
PrivateSubPicture1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfFlagAndButton=1Then
(PstartX,PstartY)-(PendX,PendY)
(PstartX,PstartY)-(X,Y)
PendX=X:PendY=Y
EndIf
EndSub
PrivateSubPicture1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfFlagAndButton=1Then
de=13\'定义绘制模式为CopyPen,不运算就绘制,避免下次绘制异或掉
(PstartX,PstartY)-(X,Y)
Flag=False
EndIf
EndSub
e控件上鼠标拖动绘制矩形,橡皮筋动作
Rem窗体级别变量定义,定义鼠标起始两点位置Pstart和Pend
DimFlag1AsBoolean,Flag2AsBoolean
DimRecX1AsLong,RecX2AsLong,RecYAsLong,PicWidthAsLong\'定义数据限制框的x0-x1
PrivateSubForm_Load()
RecX1=0:PicWidth=idth
RecX2=PicWidth-2:RecY=eight
lor=RGB(0,255,0)\'定义绘制的前景色
draw=True\'定义图片坐标模式,3为像素模式坐标
ode=3\'定义图片坐标模式,3为像素模式坐标
de=7\'定义绘制模式为XOR,异或操作,两次即复原
yle=0
lor=RGB(255,0,0)
(0,0)-(RecX1+1,RecY),,BF
(RecX2,0)-(RecX2+1,RecY),,BF
EndSub
PrivateSubCommand3_Click()
UnloadMe\'退出
EndSub
PrivateSubPicture1_MouseDown(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfNotFlag1AndButton=1AndX>=RecX1-2AndX<=RecX1+2Then
de=7\'定义绘制模式为XOR,异或操作,两次即复原
Flag1=True
EndIf
IfNotFlag2AndButton=1AndX>=RecX2-2AndX<=RecX2+2Then
de=7\'定义绘制模式为XOR,异或操作,两次即复原
Flag2唯见长江天际流打一成语 =True
EndIf
EndSub
PrivateSubPicture1_MouseMove(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfFlag1AndButton=1Then
IfX
(RecX1,0)-(RecX1+1,RecY),,BF
(X,夫妻相守一生金典成语 0)-(X+1,RecY),,BF
RecX1=X
Else
de=13\'定义绘制模式为CopyPen,不运算就绘制,避免下次绘制异或掉
(RecX1,0)-(RecX1+1,RecY),,BF
Flag1=False
EndIf
EndIf
IfFlag2AndButton=1Then
IfX
(RecX2,0)-(RecX2+1,RecY),,BF
(X,0)-(X+1,RecY),,BF
RecX2=X
Else
de=13\'定义绘制模式为CopyPen,不运算就绘制,避免下次绘制异或掉
(RecX2,0)-(RecX2+1,RecY),,BF
Flag2=False
EndIf
EndIf
EndSub
PrivateSubPicture1_MouseUp(ButtonAsInteger,ShiftAsInteger,XAsSingle,YAsSingle)
IfFlag1AndButton=1AndX
de=13\'定义绘制模式为CopyPen,不运算就绘制,避免下次绘制异或掉
(X,0)-(X+1,RecY),,BF
Flag1=False
RecX1=X
EndIf
IfFlag2AndButton=1AndX
de=13\'定义绘制模式为CopyPen,不运算就绘制,避免下次绘制异或掉
(X,0)-(X+1,RecY),,BF
Flag2=False
RecX2=X
EndIf
EndSub
更多推荐
twip是什么意思p在线翻译读音例句
发布评论