九色国产,午夜在线视频,新黄色网址,九九色综合,天天做夜夜做久久做狠狠,天天躁夜夜躁狠狠躁2021a,久久不卡一区二区三区

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
計算機技術(shù)基礎(chǔ)(第十一章 圖形設(shè)計 )
計算機技術(shù)基礎(chǔ)(VB)
第十一章 圖形設(shè)計 
學(xué)習(xí)內(nèi)容
第一節(jié) 圖形設(shè)計基礎(chǔ)
必修
開啟
通過
第二節(jié) 圖形控件
必修
開啟
通過
第三節(jié) 繪圖方法
必修
開啟
通過
第四節(jié) 與繪圖有關(guān)的常用屬性、事件和方法
必修
開啟
通過
本章小結(jié)
必修
開啟
通過
第一節(jié) 圖形設(shè)計基礎(chǔ)
一、坐標系統(tǒng)
缺省坐標系統(tǒng):
1.刻度單位
缺省刻度單位:緹(Twip)
改變刻度單位:對象名.ScaleMode=屬性值
2.改變坐標系
(1)ScaleLeft、ScaleTop屬性
改變坐標系的原點位置。
【例11-1】
Private Sub Command1_Click()
Label1.Left=0
Label1.Top=0
End Sub
Private Sub Command1_Click()
Form1.ScaleLeft=200
Form1.ScaleTop=300
Label1.Left=0
Label1.Top=0
End Sub
(2)ScaleWidth和ScaleHeight屬性
表示容器對象的內(nèi)部寬度與高度。
用于自定義一個刻度單位。
例:使用ScaleWidth和ScaleHeight改變窗體刻度單位
設(shè)窗體高度是2000Twips,寬度是3000Twips。
此時水平和垂直刻度單位均為1Twips。
如果設(shè)置:ScaleHeight=500
則將窗體的高度劃分為500個單位,
每個單位為2000/500,即4Twips
如果設(shè)置:ScaleWidth=1000
則將窗體的寬度劃分為1000個單位,
每個單位為3000/1000,即3Twips
將ScaleHeight、ScaleWidth、ScaleLeft與ScaleTop屬性設(shè)置為任何值都自動將ScaleMode設(shè)置為0。
【例11-2】將一個圖形(Shape1)的左上角移動到窗體的中央位置。
Private Sub Command1_Click()
Form1.ScaleHeight=2
Form1.ScaleWidth=2
Shape1.Left=1
Shape1.Top=1
End Sub
【例11-3】定義窗體的左下角為原點(0,0),y坐標軸正方向向上。
Private Sub Form_Load()
ScaleHeight=-4
ScaleWidth=4
ScaleTop=4
End Sub
Private Sub Command1_Click()
Shape1.Left=1
Shape1.Top=1
End Sub
【例11-4】定義窗體的中央位置為原點(0,0),y坐標軸正方向向上。
PrivateSubForm_Load()
ScaleHeight=-4
ScaleWidth=4
ScaleTop=2
ScaleLeft=-2
End Sub
Private Sub Command1_Click()
Shape1.Left=1
Shape1.Top=1
End Sub
(3)Scale方法
格式:[<對象名>.]Scale[(x1,y1)-(x2,y2)]
【例11-5】在圖片框Picture1中打印5行5列的單位矩陣。
Private Sub Picture1_Click()
Dim a(5,5)As Integer
Picture1.Scale(0,0)-(6,6)
For i=1 To 5
Picture1.CurrentY=i
For j=1 To 5
If i=j Then a(i,j)=1 Else a(i,j)=0
Picture1.CurrentX=j
Picture1.Print a(i,j);
Next j,i
End Sub
3.當前坐標
CurrentX屬性:設(shè)置或返回的當前坐標的水平坐標
CurrentY屬性:設(shè)置或返回的當前坐標的垂直坐標
例如:在點(200,200)處顯示“當前坐標為(200,200)”
Form1.CurrentX=200
Form1.CurrentY=200
Form1.Print"當前坐標為(200,200)"
4.與位置和大小有關(guān)的屬性
二、顏色
顏色值:四字節(jié)、長整型。
最低的三個字節(jié):紅色、綠色、藍色。
每個字節(jié)取值:00~FF(或0~255)
1.在設(shè)計階段設(shè)置顏色:在屬性窗口設(shè)置
2.在運行階段設(shè)置顏色:
(1)RGB函數(shù):RGB(red,green,blue)
獲取一個長整型(Long)的RGB顏色值。
例:Form1.BackColor=RGB(255,0,0)
設(shè)置窗體的背景色為紅色
(2)QBColor函數(shù):QBColor(value)
value:0~7、8~15(為0~7顏色加亮)
0—黑色 1—藍色 2—綠色 3—青色
4—紅色 5—紫紅色 6—黃色 7—淺灰色
例:Form1.BackColor=QBColor(4)
(3)使用顏色常量
vbBlack 黑色
vbRed  紅色
vbGreen 綠色
vbYellow 黃色
vbBlue  藍色
vbMagenta 洋紅色
vbCyan  青色
vbWhite  白色
(4)使用顏色的十六進制值
&H00BBGGRR&
(5)使用系統(tǒng)顏色
例:vbScrollBars &H80000000 滾動條顏色
vbDesktop  &H80000001 桌面顏色
……
第二節(jié) 圖形控件
一、Shape控件
1.屬性:Shape
BorderStyle、BorderColor、BorderWidth
BackStyle、BackColor
FillStyle、FillColor
例如:
2.方法
Move
object.Move left[,top[,width[,height]]]
【例11-6】在窗體上移動一正方形,每次移動時使正方形的長和寬增加100緹。
Private Sub Command1_Click()
Shape1.Move Shape1.Left+100,Shape1.Top+100,_
Shape1.Width+100,Shape1.Height+100
End Sub
二、Line控件
1.作用:設(shè)計時在窗體上繪制直線。
2.屬性:BorderStyle、BorderWidth
X1、X2、Y1、Y2
注意:運行時可以通過改變X1、X2、Y1和Y2屬性來移動它或者調(diào)整它的大小。而不能使用Move方法
第三節(jié) 繪圖方法
一、畫點方法(Pset)
格式:[<對象名>.]PSet [Step](x,y)[,<顏色>]
功能:在對象的指定位置,用一定的顏色畫點
說明:<對象名> <對象名>—窗體、圖片框、缺省為當前窗體。
Step—可選的,指定相對于由CurrentX和CurrentY屬性提供的當前圖形位置的坐標。
(x,y)—點的水平和垂直坐標。
<顏色> <顏色>—繪制該點的RGB顏色。
省略時使用 <對象名>的ForeColor屬性值。
【例11-7】 用PSet方法在窗體上繪制一條[00,3600]的正弦曲線。
Private Sub Form_Click()
DrawWidth=2
Scale(0,1)-(360,-1)
For x=0 To360
y=Sin(x*3.1415926/180)
PSet(x,y),vbRed
Next x
End Sub
【例11-8】 用PSet方法在窗體上繪制一條如下圖所示的星形曲線,曲線由以下參數(shù)方程決定:
x=sin2t*cost
y=sin2t*sint
其中t的取值范圍為0≤t≤2π
Private Sub Form_Click()
Scale(-1,1)-(1,-1)
DrawWidth=2
ForeColor=vbRed
For t=0 To 2*3.1415926 Step 0.001
x=Sin(2*t)*Cos(t)
y=Sin(2*t)*Sin(t)
PSet(x,y)
Next t
End Sub
二、畫線、矩形方法(Line)
格式:[<對象名>.]Line [Step][(x1,y1)]–[Step](x2,y2)
[,<顏色>[,B[F]]]
功能:在指定兩點之間用指定的顏色畫線或矩形
說明:<對象名> <對象名>—窗體、圖片框,缺省為當前窗體。
Step—可選的,指定相對于由CurrentX和CurrentY屬性提供的當前位置的坐標。
(x1,y1)—直線或矩形的起點坐標。如果省略,線起始于由CurrentX和CurrentY指示的位置。
Step—可選的,指定相對于起點的終點坐標。
(x2,y2)—直線或矩形的終點坐標。
<顏色>—畫線時用的RGB顏色。
B—利用對角坐標畫出矩形。
F—規(guī)定矩形以矩形邊框的顏色填充。
【例11-9】單擊窗體在窗體上繪制直線、矩形。
Private Sub Form_Click()
ScaleWidth=100
ScaleHeight=100
DrawWidth=5
'畫三角形
Line(10,30)-(10,80),vbRed
Line-(30,80),vbGreen
Line-(10,30),vbBlue
'畫矩形
CurrentX=40: CurrentY=30
Line-(60,80),vbRed,B
'畫實心矩形
CurrentX=70: CurrentY=30
Line-Step(20,50),vbMagenta,BF
End Sub
【例11-10】給星形曲線繪制坐標線。
Private Sub Form_Click()
Scale(-1,1)-(1,-1)
DrawWidth=3
Line(-1,0)-(1,0),vbBlue
Line(0,1)-(0,-1),vbBlue
DrawWidth=1
For i=-1 To 1 Step 0.1
Line(i,0.05)-(i,0) '畫垂直刻度
Next i
DrawWidth=2
ForeColor=vbRed
For t=0 To 2*3.1415926 Step 0.001
x=Sin(2*t)*Cos(t)
y=Sin(2*t)*Sin(t)
PSet(x,y)
Next t:End Sub
【例11-11】在窗體上以隨機的顏色從外向里畫矩形,每隔一秒畫一個。
Dim X1,Y1,X2,Y2,DX,DY
Private Sub Form_Load()
X1=0
Y1=0
X2=ScaleWidth
Y2=ScaleHeight
DX=ScaleWidth/20
DY=ScaleHeight/20
DrawWidth=8
Randomize
End Sub
Private Sub Timer1_Timer()
If X1 <X2 And Y1<Y2 Then
Line(X1,Y1)-(X2,Y2),QBColor(Int(Rnd*15)),B
X1=X1+DX
Y1=Y1+DY
X2=X2-DX
Y2=Y2-DY
Else
Timer1.Enabled=False
MsgBox "繪制完畢"
End If
End Sub
三、畫圓方法(Circle)
格式:[<對象名>.]Circle[Step](x,y),<半徑>,[<顏色>],
[<起始角>],[<終止角>][,<縱橫比>]
功能:在對象上畫圓、橢圓或弧。
<對象名> <對象名>—窗體、圖片框。缺省為當前窗體。
Step—指定圓、橢圓或弧的中心相對坐標。
(x,y)—圓、橢圓或弧的中心坐標。
<半徑> <半徑>—圓、橢圓或弧的半徑。為最長軸的尺寸。
<顏色> <顏色>—圓的輪廓顏色。省略則使用ForeColor值。
<起始角>,<終止角> <終止角> —以弧度為單位,范圍[-2π,2π]。
指定弧或扇形的起點和終點位置。
起點的缺省值是0;終點的缺省值是2π。
若為負數(shù),在畫弧的同時畫圓心到弧端點的連線。
<縱橫比> <縱橫比>—圓的縱橫尺寸比。缺省值為1.0(標準圓)
注意:Circle方法總是沿逆時針方向繪圖。
【例11-12】在窗體上繪制以下圖形:
Const pi=3.14159265
ScaleWidth=100
ScaleHeight=100
Circle(30,30),10
Circle(70,30),10,vbGreen, , ,0.5
Circle(70,30),10,vbRed, , ,2
Circle(30,75),10, ,-0.75*pi,-0.25*pi
Circle(70,75),10, ,-0.25*pi,-0.75*pi
Circle(70,75),10, ,1.25*pi,1.75*pi
【例11-13】在窗體上繪制以下圖形:
Private Sub Form_Click()
FillStyle=0 '定義填充風(fēng)格—Solid
Scale(0,100)-(100,0)
cx=50   '圓心X坐標
cy=0    '圓心Y坐標
r=60    '半徑
For i=45 To 130 Step 5
If i Mod 10 <>0 Then
FillColor=vbRed
Else
FillColor=vbYellow
End If
Circle(cx,cy),r, ,-i*3.1416/180,-(i+5)*3.1416/180
Next i
End Sub
第四節(jié) 與繪圖有關(guān)的常用屬性、事件和方法
一、清除圖形方法(Cls)
[<對象名>].Cls
功能:清除運行時Form或PictureBox所生成的圖形和文本
<對象名>—窗體、圖片框。
注意:
(1)Cls的功能受AutoRedraw的影響。
(2)調(diào)用Cls之后,對象的CurrentX和CurrentY屬性復(fù)位為0。
二、線寬(DrawWidth)屬性和線型(DrawStyle)屬性
1.DrawWidth屬性
設(shè)置圖形方法輸出的線寬。
線寬的取值范圍從1到32767。
該值以像素為單位表示線寬。缺省值為1,即一個像素寬。
如果DrawWidth屬性值大于1,畫出的圖形是實線;如果DrawWidth屬性值等于1,可以通過DrawStyle屬性畫出各種線型。
2.DrawStyle屬性
設(shè)置圖形方法輸出的線型。
三、填充顏色(FillColor)屬性和填充樣式(FillStyle)屬性
1.FillColor屬性
改變填充圖形的顏色。
2.FillStyle屬性
設(shè)置封閉圖形的填充樣式。
四、自動重畫(AutoRedraw)屬性
使用如Print、PSet、Line和Circle方法,在改變對象大小或隱藏在另一個對象后又重新顯示的情況下,設(shè)置AutoRedraw為True,將在Form或PictureBox控件中自動重繪輸出。
運行時在程序中設(shè)置AutoRedraw,可以在畫持久圖形(如背景色或網(wǎng)格)和臨時圖形之間切換。如果設(shè)置AutoRedraw為True,以前的輸出成為背景屏幕的一部分。將AutoRedraw設(shè)置為False后,用Cls方法清除繪圖區(qū)時不會刪除背景圖形。把AutoRedraw改回True后,再用Cls將清除背景圖形。
【例11-14】
單擊Command1在圖片框中繪制一系列背景線,
單擊Command2在圖片框中隨機繪制一系列圓,
單擊Command3清除圖片框中繪制的圓,
單擊Command4清除圖片框中的所有圖形。
Private Sub Command1_Click()
P1.AutoRedraw=True
dx=P1.ScaleWidth/20
P1.ForeColor=vbYellow
For i=1 To 19
P1.Line(i * dx,0)-(i * dx,P1.ScaleHeight)
Next i
End Sub
Private Sub Command2_Click()
P1.AutoRedraw=False
P1.ForeColor=vbRed
Randomize
For i=1 To 20
cx=Int(Rnd * P1.ScaleWidth)
cy=Int(Rnd * P1.ScaleHeight)
P1.Circle(cx,cy),200
Next I
End Sub
Private Sub Command3_Click()
P1.AutoRedraw=False
P1.Cls
End Sub
Private Sub Command4_Click()
P1.AutoRedraw=True
P1.Cls
End Sub
五、Paint事件
在應(yīng)用程序運行時,當一個對象被移動或改變大小之后;或當一個覆蓋該對象的窗體被移開之后,如果要保持該對象上所畫圖形的完整性(重現(xiàn)原來的圖形),可以選擇觸發(fā)Paint事件來完成圖形的重畫工作。
如果AutoRedraw屬性被設(shè)置為True,重新繪圖將會自動進行,此時Paint事件無效。
使用Refresh方法時,Paint事件即被自動調(diào)用。
在Resize事件過程中調(diào)用Refresh方法,強制使用Paint事件重畫圖形。
【例11-15】在窗體中畫一個米字形。當窗體的大小改變時,米字形也隨著自動調(diào)整。
Private Sub Form_Paint()
Dim HalfX,HalfY
'設(shè)置到寬度的一半。
HalfX=ScaleLeft+ScaleWidth/2
'設(shè)置到高度的一半。
HalfY=ScaleTop+ScaleHeight/2
'畫一個米字形。先畫對角線
Line(ScaleLeft,ScaleTop)-(ScaleWidth,ScaleHeight)
Line(ScaleLeft,ScaleHeight)-(ScaleWidth,ScaleTop)
'再畫十字
Line(HalfX,ScaleTop)-(HalfX,ScaleHeight)
Line(ScaleLeft,HalfY)-(ScaleWidth,HalfY)
End Sub
Private Sub Form_Resize()
Refresh
End Sub
本章小結(jié)
1.坐標系統(tǒng)
改變坐標系統(tǒng)的方法:
ScaleLeft和ScaleTop屬性
ScaleWidth和ScaleHeight屬性
Scale方法
2.Left、Top、Width、Height屬性和ScaleLeft、ScaleTop、ScaleHeight、ScaleWidth屬性的區(qū)別。
3.顏色
RGB函數(shù)
QBColor函數(shù)
4.圖形控件
Shape控件
Line控件
5.繪圖方法
畫點方法PSet
畫直線、矩形方法Line
畫圓方法Circle
6.與繪圖有關(guān)的常用屬性、事件和方法清除圖形方法(Cls)
線寬(DrawWidth)屬性和線型(DrawStyle)屬性
填充顏色(FillColor)屬性和填充樣式(FillStyle)屬性
自動重畫(AutoRedraw)屬性
Paint事件
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
第9章 圖形操作
VB圖形和繪圖操作
第六章 圖形設(shè)計
Visual Basic自適應(yīng)窗體設(shè)計經(jīng)驗
Visual Basic2自適應(yīng)窗體設(shè)計經(jīng)驗-開發(fā)頻道-VB-天極網(wǎng)
VB中對象隨窗體而改變大小的方法總結(jié)
更多類似文章 >>
生活服務(wù)
熱點新聞
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服