将以下代码复制到纯文本文件中,将扩展名改成FRM即可使用VERSION 5.00
Begin VB.Form Form_C_Test
AutoRedraw = -1 'True
Caption = "线条控件旋转示例"
ClientHeight = 5040
ClientLeft = 60
ClientTop = 345
ClientWidth = 6045
LinkTopic = "Form1"
ScaleHeight = 5040
ScaleWidth = 6045
StartUpPosition = 3 'Windows Default
Begin VB.Timer Timr_C_Rota
Enabled = 0 'False
Interval = 1
Left = -666
Top = 4320
End
Begin VB.Frame Fram_C_Mouse
Caption = "鼠标触发旋转"
Height = 4185
Left = 3120
TabIndex = 2
Top = 240
Width = 2730
Begin VB.Line Line_C_Test3
BorderWidth = 5
X1 = 1365
X2 = 2010
Y1 = 1545
Y2 = 900
End
End
Begin VB.Frame Fram_C_Timer
Caption = "计时器触发旋转"
Height = 4200
Left = 120
TabIndex = 0
Top = 240
Width = 2685
Begin VB.CommandButton CBtn_C_Switch
Caption = "开始(&S)"
Height = 285
Left = 1080
TabIndex = 1
Top = 3720
Width = 1365
End
Begin VB.Line Line_C_Test1
X1 = 1020
X2 = 1860
Y1 = 1275
Y2 = 1275
End
Begin VB.Line Line_C_Test2
X1 = 345
X2 = 2025
Y1 = 3000
Y2 = 3000
End
End
Begin VB.Label Labl_C_Notice
Caption = "Speedies 与您共同进步 E-Mail:[email protected]"
Height = 375
Left = 120
TabIndex = 3
Top = 4560
Width = 4095
End
End
Attribute VB_Name = "Form_C_Test"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option ExplicitPrivate Const PIE = 3.14159265 / 12
Private Th As Single
Private R1 As Single
Private R2 As Single
Private Lx1 As Single
Private Ly1 As Single
Private Lx2 As Single
Private Ly2 As Single
Private Lx3 As Single
Private Ly3 As Single
Private Sub CBtn_C_Switch_Click()
Timr_C_Rota.Enabled = Not Timr_C_Rota.Enabled
If Not CBtn_C_Switch.Caption = "停止(&T)" Then
CBtn_C_Switch.Caption = "停止(&T)"
Else
CBtn_C_Switch.Caption = "开始(&S)"
End If
End Sub
Private Sub Form_Load()
Dim dx As Single
Dim dy As Single dx = Line_C_Test1.X2 - Line_C_Test1.X1
dy = Line_C_Test1.Y2 - Line_C_Test1.Y1
R1 = Sqr(dx * dx + dy * dy)
Lx1 = Line_C_Test1.X1
Ly1 = Line_C_Test1.Y1
dx = Line_C_Test2.X2 - Line_C_Test2.X1
dy = Line_C_Test2.Y2 - Line_C_Test2.Y1
R2 = Sqr(dx * dx + dy * dy) / 2
Lx2 = (Line_C_Test2.X1 + Line_C_Test2.X2) / 2
Ly2 = (Line_C_Test2.Y1 + Line_C_Test2.Y2) / 2
dx = Line_C_Test3.X2 - Line_C_Test3.X1
dy = Line_C_Test3.Y2 - Line_C_Test3.Y1
R1 = Sqr(dx * dx + dy * dy)
Lx3 = Line_C_Test3.X1
Ly3 = Line_C_Test3.Y1End SubPrivate Sub Fram_C_Mouse_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Th = Y / 300
Line_C_Test3.X2 = Lx3 + Cos(Th) * R1
Line_C_Test3.Y2 = Ly3 + Sin(Th) * R1
End SubPrivate Sub Timr_C_Rota_Timer()
Th = Th + PIE Line_C_Test1.X2 = Lx1 + Cos(Th) * R1
Line_C_Test1.Y2 = Ly1 + Sin(Th) * R1 Line_C_Test2.X1 = Lx2 + Cos(Th) * R2
Line_C_Test2.Y1 = Ly2 + Sin(Th) * R2
Line_C_Test2.X2 = Lx2 - Cos(Th) * R2
Line_C_Test2.Y2 = Ly2 - Sin(Th) * R2
End Sub
Begin VB.Form Form_C_Test
AutoRedraw = -1 'True
Caption = "线条控件旋转示例"
ClientHeight = 5040
ClientLeft = 60
ClientTop = 345
ClientWidth = 6045
LinkTopic = "Form1"
ScaleHeight = 5040
ScaleWidth = 6045
StartUpPosition = 3 'Windows Default
Begin VB.Timer Timr_C_Rota
Enabled = 0 'False
Interval = 1
Left = -666
Top = 4320
End
Begin VB.Frame Fram_C_Mouse
Caption = "鼠标触发旋转"
Height = 4185
Left = 3120
TabIndex = 2
Top = 240
Width = 2730
Begin VB.Line Line_C_Test3
BorderWidth = 5
X1 = 1365
X2 = 2010
Y1 = 1545
Y2 = 900
End
End
Begin VB.Frame Fram_C_Timer
Caption = "计时器触发旋转"
Height = 4200
Left = 120
TabIndex = 0
Top = 240
Width = 2685
Begin VB.CommandButton CBtn_C_Switch
Caption = "开始(&S)"
Height = 285
Left = 1080
TabIndex = 1
Top = 3720
Width = 1365
End
Begin VB.Line Line_C_Test1
X1 = 1020
X2 = 1860
Y1 = 1275
Y2 = 1275
End
Begin VB.Line Line_C_Test2
X1 = 345
X2 = 2025
Y1 = 3000
Y2 = 3000
End
End
Begin VB.Label Labl_C_Notice
Caption = "Speedies 与您共同进步 E-Mail:[email protected]"
Height = 375
Left = 120
TabIndex = 3
Top = 4560
Width = 4095
End
End
Attribute VB_Name = "Form_C_Test"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option ExplicitPrivate Const PIE = 3.14159265 / 12
Private Th As Single
Private R1 As Single
Private R2 As Single
Private Lx1 As Single
Private Ly1 As Single
Private Lx2 As Single
Private Ly2 As Single
Private Lx3 As Single
Private Ly3 As Single
Private Sub CBtn_C_Switch_Click()
Timr_C_Rota.Enabled = Not Timr_C_Rota.Enabled
If Not CBtn_C_Switch.Caption = "停止(&T)" Then
CBtn_C_Switch.Caption = "停止(&T)"
Else
CBtn_C_Switch.Caption = "开始(&S)"
End If
End Sub
Private Sub Form_Load()
Dim dx As Single
Dim dy As Single dx = Line_C_Test1.X2 - Line_C_Test1.X1
dy = Line_C_Test1.Y2 - Line_C_Test1.Y1
R1 = Sqr(dx * dx + dy * dy)
Lx1 = Line_C_Test1.X1
Ly1 = Line_C_Test1.Y1
dx = Line_C_Test2.X2 - Line_C_Test2.X1
dy = Line_C_Test2.Y2 - Line_C_Test2.Y1
R2 = Sqr(dx * dx + dy * dy) / 2
Lx2 = (Line_C_Test2.X1 + Line_C_Test2.X2) / 2
Ly2 = (Line_C_Test2.Y1 + Line_C_Test2.Y2) / 2
dx = Line_C_Test3.X2 - Line_C_Test3.X1
dy = Line_C_Test3.Y2 - Line_C_Test3.Y1
R1 = Sqr(dx * dx + dy * dy)
Lx3 = Line_C_Test3.X1
Ly3 = Line_C_Test3.Y1End SubPrivate Sub Fram_C_Mouse_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Th = Y / 300
Line_C_Test3.X2 = Lx3 + Cos(Th) * R1
Line_C_Test3.Y2 = Ly3 + Sin(Th) * R1
End SubPrivate Sub Timr_C_Rota_Timer()
Th = Th + PIE Line_C_Test1.X2 = Lx1 + Cos(Th) * R1
Line_C_Test1.Y2 = Ly1 + Sin(Th) * R1 Line_C_Test2.X1 = Lx2 + Cos(Th) * R2
Line_C_Test2.Y1 = Ly2 + Sin(Th) * R2
Line_C_Test2.X2 = Lx2 - Cos(Th) * R2
Line_C_Test2.Y2 = Ly2 - Sin(Th) * R2
End Sub
请问大哥可否赐教关于用VB画图的技巧!尤其是菱形!
显示在敞口的一个图形匡里显示个菱形
拜托了!很急的!
我的QQ4081531
邮箱[email protected]