📄 计算三角形面积并可自由改变边长.frm
字号:
VERSION 5.00
Begin VB.Form Form1
Caption = "三角面积PLUS"
ClientHeight = 5250
ClientLeft = 60
ClientTop = 345
ClientWidth = 7410
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
LinkTopic = "Form1"
ScaleHeight = 5250
ScaleWidth = 7410
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton Command1
Caption = "计算"
BeginProperty Font
Name = "宋体"
Size = 15.75
Charset = 134
Weight = 700
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 675
Left = 6000
TabIndex = 3
Top = 480
Width = 1035
End
Begin VB.TextBox T3
Appearance = 0 'Flat
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 360
Left = 2760
TabIndex = 2
Text = "5490.02"
Top = 3840
Width = 1155
End
Begin VB.TextBox T2
Alignment = 2 'Center
Appearance = 0 'Flat
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 300
Left = 1200
TabIndex = 1
Text = "3897.84"
Top = 2160
Width = 975
End
Begin VB.TextBox T1
Alignment = 1 'Right Justify
Appearance = 0 'Flat
BeginProperty Font
Name = "宋体"
Size = 12
Charset = 134
Weight = 400
Underline = 0 'False
Italic = 0 'False
Strikethrough = 0 'False
EndProperty
Height = 300
Left = 3960
TabIndex = 0
Text = "5260.55"
Top = 2040
Width = 1035
End
Begin VB.Label Label1
Caption = "程序用法:用鼠标拖动三个顶点,然后点“计算”得到三角面积"
Height = 255
Left = 0
TabIndex = 4
Top = 0
Width = 7335
End
Begin VB.Shape S3
FillColor = &H000000FF&
FillStyle = 0 'Solid
Height = 255
Left = 720
Top = 3840
Width = 255
End
Begin VB.Shape S2
FillColor = &H000000FF&
FillStyle = 0 'Solid
Height = 255
Left = 2400
Top = 360
Width = 255
End
Begin VB.Shape S1
FillColor = &H000000FF&
FillStyle = 0 'Solid
Height = 255
Left = 6360
Top = 3840
Width = 255
End
Begin VB.Line L1
BorderWidth = 5
X1 = 6480
X2 = 2520
Y1 = 3960
Y2 = 480
End
Begin VB.Line L3
BorderWidth = 5
X1 = 960
X2 = 6480
Y1 = 3960
Y2 = 3960
End
Begin VB.Line L2
BorderWidth = 5
X1 = 2520
X2 = 840
Y1 = 480
Y2 = 3960
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
' VB综合程序举例
' 选择结构和函数
'
'作者:曹新国
'日期:2008年3月24日
Dim VN As Integer
Private Sub Command1_Click()
'定义4个单精度实型变量
Dim a!, b!, c!, S!, Aarea!
'Text是TextBox的默认属性,可以不写
a = Val(T1)
b = Val(T2)
c = Val(T3.Text)
S = 1 / 2 * (a + b + c)
area = Sqr(S * (S - a) * (S - b) * (S - c))
MsgBox "三角面积 = " & Format(area, "#.00")
End Sub
'鼠标按下时,让选中的小方框变色,并记录下顶点编号
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
With S1
If X < .Left + .Width And X > .Left And Y > .Top And Y < .Top + .Height Then
.FillColor = vbYellow
VN = 1
End If
End With
With S2
If X < .Left + .Width And X > .Left And Y > .Top And Y < .Top + .Height Then
.FillColor = vbYellow
VN = 2
End If
End With
With S3
If X < .Left + .Width And X > .Left And Y > .Top And Y < .Top + .Height Then
.FillColor = vbYellow
VN = 3
End If
End With
End Sub
'如果是拖动鼠标,小移动小方框及相连接的线头,并修改文本框中的线长值
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If VN = 0 Then Exit Sub
If VN = 1 Then
L1.X1 = X
L1.Y1 = Y
L3.X2 = X
L3.Y2 = Y
S1.Left = X - S1.Width / 2
S1.Top = Y - S1.Height / 2
End If
If VN = 2 Then
L2.X1 = X
L2.Y1 = Y
L1.X2 = X
L1.Y2 = Y
S2.Left = X - S2.Width / 2
S2.Top = Y - S2.Height / 2
End If
If VN = 3 Then
L3.X1 = X
L3.Y1 = Y
L2.X2 = X
L2.Y2 = Y
S3.Left = X - S3.Width / 2
S3.Top = Y - S3.Height / 2
End If
With L1
T1.Left = (.X1 + .X2) / 2 - T1.Width / 2
T1.Top = (.Y1 + .Y2) / 2 - T1.Height / 2
T1.Text = Format(Sqr((.X2 - .X1) ^ 2 + (.Y2 - .Y1) ^ 2), "0.00")
End With
With L2
T2.Left = (.X1 + .X2) / 2 - T2.Width / 2
T2.Top = (.Y1 + .Y2) / 2 - T2.Height / 2
T2.Text = Format(Sqr((.X2 - .X1) ^ 2 + (.Y2 - .Y1) ^ 2), "0.00")
End With
With L3
T3.Left = (.X1 + .X2) / 2 - T3.Width / 2
T3.Top = (.Y1 + .Y2) / 2 - T3.Height / 2
T3.Text = Format(Sqr((.X2 - .X1) ^ 2 + (.Y2 - .Y1) ^ 2), "0.00")
End With
End Sub
'鼠标放开时,去掉“热点”,并将顶点编号清零
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
If VN = 1 Then S1.FillColor = vbRed
If VN = 2 Then S2.FillColor = vbRed
If VN = 3 Then S3.FillColor = vbRed
VN = 0
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -